我可以直接从我的谷歌驱动器在线推/拉吗?
有方法通过谷歌驱动器同步Windows应用程序同步我的本地git仓库到我的谷歌驱动器,但我想知道我是否可以完全绕过它的需要。我可以直接从我的谷歌驱动器在线推/拉吗?
例如,
$ git remote add origin https://drive.google.com/<my_folder>/<my_repository>.git
$ git push github master
不,你不行。 Google驱动器上没有运行git。
我也建议对谷歌驱动器/基于Dropbox的解决方案,并去托管解决方案,而不是一个饭桶。例如Bitbucket,它提供了一些免费的私人存储库。你可以找到一些关于不同的git托管网站here的比较信息。
正如人指出(和OP已经知道),你可以把纯仓库本地谷歌驱动器/ Dropbox的文件夹内,并与工作,但是,也有注意事项。云服务有自己的系统来合并冲突,这并不真正与Git协同工作。考虑场景:
您与设备工作离线,推动一些提交在谷歌云端硬盘文件夹中的裸库,但因为你是离线的,这些更改不会同步到云端。
然后忘掉它,用设备B联机工作,推动承诺谷歌云端硬盘文件夹,以及这些变化确实会同步。
设备A变成在线 - 你现在在谷歌云端硬盘中的冲突。
这当然是可以恢复的,但是不方便。因此,我建议使用专为git托管而设计的解决方案。
这是可能的,检查其他答案,接受的答案应该改变。 – 2014-05-25 11:07:56
@AmrLotfy OP想要的方式是不可能的。在Google驱动器文件夹中拥有裸回购并不是他所要求的。 – 1615903 2014-05-27 16:32:53
@ user1615903'我也建议不要使用基于Google Drive/Dropbox的解决方案'为什么这样? – 2014-07-08 06:17:09
关于这个问题Here is a very good article(archived version here,在这里转载的相关部分):
比方说你有一个与文件README
名为johndoe
像下面的项目:
/var/www/html/johndoe/
/var/www/html/johndoe/README
初始化一个空Git repository here:
$ cd /var/www/html/johndoe
$ git init
$ git add README
$ git commit README -m "Initial commit."
目录更改到您的谷歌驱动器所在的位置和初始化一个纯仓库:
$ 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仓库:
$ cd /var/www/html/johndoe2
$ git clone file:///Users/myusername/Google\ Drive/johndoe
FWIW这只适用于Windows。 – refi64 2016-09-19 18:02:08
链接的文章是404'ing。 – 2017-05-16 15:48:03
@Michael存档[这里](https://web.archive.org/web/20161204062829/http://kahthong.com/2012/05/how-use-google-drive-or-dropbox-host-your-私人git-repository) – user1712447 2017-06-07 23:06:51
如果您正在运行Unix shell并在您的计算机上安装了本地安装的Google Drive,则可以将脚本添加到.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等一样。您不会从远程端获得通常的细节。
您可以使用prasmussen的gdrive工具:https://github.com/prasmussen/gdrive。
它适用于OSX,Linux和Windows。
我还没有使用这个工具相当大的评分。
您可以简单地将您的工作文件夹按照您认为合适的方式存档在Google云端硬盘中,就像其他任何备份一样,为了保持一致性,您可以使用crontab自动执行此操作,或者使用简单的脚本进行存档,然后通过Google Drive cli工具上传最适合你的工作。
OP想用git界面来访问谷歌驱动器,你的建议与他的需求无关。 – 2017-12-02 22:42:39
适用过去式。用户可以发布查询来支持,直到点击满意的Google云端硬盘集成。 – Spencer 2017-12-03 16:31:52
我创建了这样的工具....需要更多的GIT服务器的东西。 – Michael 2015-12-15 17:33:26