Visual Studio GIT 与 local/network 文件夹同步为 remote/origin

Visual Studio GIT sync with local/network file folder as remote/origin

我有一个包含提交的本地 GIT 存储库,但到目前为止尚未同步。我根据 创建它,这基本上导致 repo 的本地部分没有 remote/origin.

我没有(公司)GIT 服务器,但有一个 Onedrive for Business 帐户,它看起来很完美,至少可以备份回购协议,以防狗吃掉机器。 (以后的计划是在情况稳定后迁移到 comany VCS,即 SVN。)

我知道 GIT 可以同步到文件系统,但是..该怎么做?

  1. 因为我已经在 Visual Studio 中输入了一些错误的数据作为远程仓库(它询问我何时选择 "Sync" 选项,抱怨,现在所有选项都是灰色的在 "Sync" 下),我该如何更改它?只能通过命令行 like

    git remote set-url origin "C:\Users\Test\OneDrive for Business\Andreas\code\project1"
    
  2. 网络共享和本地共享的正确 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。

经过更多搜索..

我有以下错误:

  1. Git Repo需要初始化:

    git init --bare project1.git
    
  2. 正确的文件夹命名,还有

  3. 一切都需要从命令行完成

所以,如果您从头开始,这里是 Windows 的过程(好吧,毕竟是 Visual Studio 集成..):

  1. 获取位置,本地或网络共享
  2. 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
    
  3. 您现在可以在 Visual Studio 中输入位置作为原点,一切正常。然后您可以停止 here/VS 将成功同步。

    如果你(像我一样)先添加了一个错误的位置并且不能再更改它
  4. 在命令行上继续,在本地gitrepo/source文件的文件夹中:

    git remote set-url origin "file:///C:\Users\Test\OneDrive for Business\Andreas\code\project1\project1.git"
    

    将设置正确的 remote/origin(我们不能在 Visual Studio 中执行此操作,已使用 VS2015 进行检查)

  5. 告诉git使用什么分支

    git push --set-upstream origin master
    
  6. 现在 "sync"ing in Visual Studio 应该可以工作,您也可以从命令行(仅推送)使用:

    git push
    
  7. 也在Visual Studio中测试

至于 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

(另见 )

我为此工作了大约一个小时。非常令人沮丧。最后,这是我必须做的。

  1. 在我的网络共享上为我的存储库创建一个目录。
  2. 使用了 TortoiseGit 的 Git 克隆。右键单击我当前的本地存储库目录并克隆到我的远程存储库目录中。制作 一定要 select "Clone into Bare Repo"
  3. 然后我右键单击我的原始本地存储库并使用 TortoiseGit 到 "Push"。在出现的对话框中,我 select 编辑了 "Manage" 按钮并将 URL 添加到我的网络驱动器存储库。我 完成推送,成功。
  4. 当我回到 Visual Studio 2017 社区时,一切都已设置好。

我有一个映射的网络驱动器,我正在同步它作为添加的备份。我想 OneDrive 是相似的。

如果你还没有一个裸仓库,打开 cmd:

git init --bare "//192.168.9.3/folder/something/projectname.git"

然后在 VS 中,从文件启动一个新的存储库,或者转到存储库设置并添加一个名为(重要)origin 的新远程。 而且位置很简单"//192.168.9.3/folder/something/projectname.git"

没有其他答案中写入的所有文件////内容也能正常工作....