[英]Visual Studio GIT sync with local/network file folder as remote/origin
我有一个带有提交的本地 GIT 存储库,但到目前为止尚未同步。 我按照https://stackoverflow.com/a/20004092/586754创建了它,这基本上导致 repo 的本地部分没有远程/来源。
我没有(公司)GIT 服务器,但有一个 Onedrive for Business 帐户,它看起来很完美,至少可以备份 repo,以防狗吃掉机器。 (以后的计划是一旦事情稳定下来,就迁移到comany VCS,也就是SVN。)
我知道 GIT 可以同步到文件系统,但是..怎么做?
由于我已经在 Visual Studio 中作为远程存储库输入了一些错误数据(它询问我何时选择“同步”选项,抱怨,现在所有选项都在“同步”下变灰),我该如何更改? 只能通过命令行
git remote set-url origin "C:\\Users\\Test\\OneDrive for Business\\Andreas\\code\\project1"
网络共享和本地共享的正确 GIT URL 是什么? (就我而言,我对本地 Windows 共享最感兴趣,因为我希望 Onedrive 负责备份。)
我现在有一个空文件夹作为远程文件夹(我创建了包含“project1”的完整路径),并且还通过命令行收到错误:
git push --set-upstream origin master
fatal: 'C:\Users\Test\OneDrive for Business\Andreas\code\project1' does not appear to be a git repository
fatal: Could not read from remote repository.
初始推送还需要什么吗? 到目前为止,我只使用了 bitbucket/github,在那里我事先通过 Web 界面明确创建了一个 repo。
经过一些搜索..
我有以下错误:
Git Repo 需要初始化:
git init --bare project1.git
正确的文件夹命名,也
所以,如果你从头开始,这里是 Windows 上的过程(好吧,它毕竟是 Visual Studio 集成..):
cd 到该位置并执行(有关更多信息以及如何 cd 到网络路径,请参阅http://elegantcode.com/2011/06/18/git-on-windows-creating-a-network-shared-central-repository / )
cd ""C:\\Users\\Test\\OneDrive for Business\\Andreas\\code\\project1" git init --bare project1.git
在命令行上继续,在本地 git repo/source 文件的文件夹中:
git remote set-url origin "file:///C:\\Users\\Test\\OneDrive for Business\\Andreas\\code\\project1\\project1.git"
将设置正确的远程/来源(这在 Visual Studio 中我们无法做到,请使用 VS2015 进行检查)
告诉 git 使用哪些分支
git push --set-upstream origin master
现在在 Visual Studio 中“同步”应该可以工作,您也可以从命令行(仅限推送)使用:
git push
至于 Windows 上的正确 URL,对于本地文件夹,它是
file:///C:\Users\Test\OneDrive for Business\Andreas\code\project1\project1.git
对于网络共享,您可以将其映射到本地驱动器并使用它(与本地文件夹相同)或
file:////remoteServer/git/Share/Folder/Path/project1.git
或者
file://\\MyWorkPC\folder\project1.git
我为此工作了大约一个小时。 很令人沮丧。 最后,这就是我必须做的。
我有一个映射的网络驱动器,我正在同步到它作为一个附加的备份。 我想 OneDrive 是类似的。
如果您还没有裸仓库,请打开cmd
:
git init --bare "//192.168.9.3/folder/something/projectname.git"
然后在 VS 中,从文件启动一个新的 repo,或者转到存储库设置并添加一个名为 (important) origin
的新远程。 而位置就像"//192.168.9.3/folder/something/projectname.git"
一样简单
如果没有其他答案中写入的所有文件////内容,它就可以正常工作....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.