Visual Studio GIT与local / netowrk文件夹同步为远程/原点

时间:2015-09-29 09:00:46

标签: git visual-studio-2013 filesystems

我有一个本地GIT回购提交,但到目前为止还没有。我根据https://stackoverflow.com/a/20004092/586754创建它,这基本上导致repo的本地部分没有远程/原点。

我没有(公司)GIT服务器,但是Onedrive for Business帐户似乎非常适合在狗吃机器时备份回购。 (一旦事情稳定下来,计划稍后迁移到SVN的公司VCS。)

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

  1. 由于我已经在Visual Studio中输入了一些错误的数据作为远程仓库(它询问我何时选择"同步"选项,抱怨,现在所有选项都在&#下显示为灰色34;同步"),我该如何改变?只能通过命令行,如

    git remote set-url origin "C:\Users\Test\OneDrive for Business\Andreas\code\project1"
    
  2. 网络共享和本地共享的正确GIT URL是什么? (就我而言,我对本地Windows共享最感兴趣,因为我希望Onedrive负责备份。)

  3. 我现在有一个空文件夹作为远程(我创建了包含" 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.
    

    初始推送还需要其他什么吗? Sor far,我只使用了bitbucket / github,我通过网络界面事先明确地创建了一个repo。

3 个答案:

答案 0 :(得分:5)

经过多次搜索..

我有以下错误:

  1. 需要初始化Git Repo:

    git init --bare project1.git
    
  2. 更正文件夹命名,也

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

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

    1. 获取本地或网络共享位置
    2. 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中输入该位置作为原点,一切正常。然后你可以在这里停止/ VS将同步成功 Visual Studio Git Repository on local folder
      如果你(像我一样)先添加一个不好的位置而不能再改变它
    4. 继续在命令行上,在本地git repo / source文件的文件夹中:

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

      将设置正确的远程/原点(我们在Visual Studio中无法做到,用VS2015检查)

    5. 告诉git使用哪些分支

      git push --set-upstream origin master
      
    6. 现在"在Visual Studio中同步"可以使用命令行(仅限推送)执行:

      git push
      
    7. 在Visual Studio中进行测试
    8. 对于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
      

      (另见https://stackoverflow.com/a/2520121/586754

答案 1 :(得分:1)

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

  1. 在我的网络共享上为我的存储库创建一个目录。
  2. 使用过TortoiseGit的Git Clone。右键单击我当前的本地存储库目录并克隆到我的远程repo目录中。使 一定要选择"克隆到Bare Repo"
  3. 然后我右键点击我的原创,本地,回购并使用TortoiseGit来推送"推送"。在出现的对话框中,我选择了 "管理"按钮并将URL添加到我的网络驱动器仓库。一世 完成了推动,这是成功的。
  4. 当我回到Visual Studio 2017社区时,它已全部设置完毕。
  5. 我有一个映射的网络驱动器,我正在同步添加备份。我想OneDrive是相似的。

答案 2 :(得分:0)

如果您还没有裸露的回购,请打开cmd

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

然后在VS中,从文件启动新的repo,或转到存储库设置并添加名为(important)origin的新远程。 位置就像"//192.168.9.3/folder/something/projectname.git"

一样简单

没有所有文件////在其他答案中写的东西,它工作正常....