Могу ли я нажимать/вытаскивать прямо со своего диска Google?
Существуют методы синхронизации моего локального репозитория git с моим приводом Google через приложение Windows для синхронизации с приложением Google, но мне было интересно, могу ли я вообще обойти его потребность.
Fro, например.
$ git remote add origin https://drive.google.com/<my_folder>/<my_repository>.git
$ git push github master
Ответы
Ответ 1
Нет, вы не можете. В драйвере Google нет git.
Я также предлагаю использовать решения на основе Google Drive/Dropbox и вместо этого использовать хостинг-решение git. Например Bitbucket, который предлагает некоторые бесплатные частные репозитории. Вы можете найти сравнительную информацию о различных сайтах git хостинга здесь.
Как указывали люди (и, как уже известно OP), вы можете поместить голый репозиторий в свою локальную папку Google Диска /Dropbox и работать с ним, однако есть оговорки. Облачные службы имеют свои собственные системы для слияния конфликтов, и это не работает с git. Рассмотрим сценарий:
-
Вы работаете с устройством в автономном режиме, нажимаете некоторые коммиты в голый репозиторий в папке Google Диска, но поскольку вы в автономном режиме, эти изменения не синхронизируются с облаком.
-
Затем вы забыли об этом, работайте с устройством B онлайн, нажмите, чтобы перейти в папку Google Диска, и эти изменения синхронизируются.
-
Устройство A становится онлайн - теперь у вас есть конфликт на Google Диске.
Это, конечно, восстанавливается, но неудобно. Поэтому я рекомендую использовать решение, предназначенное именно для хостинга git.
Ответ 2
Вот очень хорошая статья на эту тему (архивная версия здесь, с соответствующими частями, воспроизведенными здесь):
Допустим, у вас есть проект с именем johndoe
с файлом README
, как показано ниже:
/var/www/html/johndoe/
/var/www/html/johndoe/README
Инициализируйте пустой репозиторий Git здесь:
$ cd /var/www/html/johndoe
$ git init
$ git add README
$ git commit README -m "Initial commit."
Перейдите в каталог, в котором находится ваш Google Диск, и инициализируйте пустой репозиторий:
$ cd /Users/myusername/Google\ Drive/
$ mkdir johndoe
$ cd johndoe
$ git init --bare
Вернитесь в свой рабочий каталог:
$ cd /var/www/html/johndoe
$ git remote add origin file:///Users/myusername/Google\ Drive/johndoe
$ git push origin master
Чтобы клонировать свой репозиторий Git с Google Диска:
$ cd /var/www/html/johndoe2
$ git clone file:///Users/myusername/Google\ Drive/johndoe
Ответ 3
Вы можете использовать itDuzzit, они обеспечивают прямую синхронизацию между облаками между Google Диском и GitHub. У них довольно ограниченный свободный уровень и несколько платных. Пока ваш код является открытым исходным кодом и/или вы не возражаете против его обработки третьим лицом, это может быть жизнеспособным решением.
Ответ 4
Если вы используете оболочку Unix и локально установлен на Google Диске на своем компьютере, вы можете добавить script в ваш .bash_profile или .zshrc файл, подобный этому...
# Initialize a remote repo on "local" Google Drive and push to it for safekeeping.
function mkr() {
CWD=$(PWD)
REPONAME=${PWD##*/}
REPOPATH=/Users/Bob/Google\ Drive/Repos/$REPONAME
mkdir -p $REPOPATH
cd $REPOPATH
git init --bare
cd $CWD
git remote add origin $REPOPATH
git push origin master
}
Предполагая, что вы уже запустили git init
, вы можете ввести mkr
из командной строки внутри вашей локальной директории проекта. После этого шага mkr
вы можете запустить git push
как обычно, как если бы он жил на GitHub, Bitbucket и т.д. У вас просто не будет обычных тонкостей с удаленной стороны.
Ответ 5
Вы могли бы просто архивировать свои рабочие папки так, как вы считаете нужным на Google Диске, как и любая другая резервная копия, для обеспечения согласованности вы можете автоматизировать это с помощью crontab или просто простого script для архивации, а затем загрузить через Google Drive cli инструменты, которые лучше всего подходят для вас.
Ответ 6
У Эдуардо Росаса есть статья article! о том, как сделать это с помощью colab (требуется только браузер).
по сути, вы получаете доступ к своему диску Google, используя:
from google.colab import drive
drive.mount('/content/gdrive')
#cd to the google drive you using the magic command
%cd /content/gdrive/'My Drive'/[your drive folder for repo]
#check your directory location with
!pwd
#clone your repo - Note this exposes your password so don't make the notebook public
!git clone https://LaloCo:password%[email protected]/LaloCo/handson-ml.git
#I find using a github personal access token easier
!git clone https://user:[email protected]/repo
Ответ 7
Вы можете использовать инструмент prasmussen gdrive: https://github.com/prasmussen/gdrive.
Он доступен для OSX, Linux и Windows.
Я еще не использовал этот инструмент для оценки.