在Visual Studio 2013中禁用git

Ale*_*erM 19 git tfs visual-studio-2013 tfs2013 azure-devops

我有一个由tfs管理的存储库.但是在本地我想通过git管理它,推送更改为tfs.一旦我在那里创建git repo,团队资源管理器中的VS2013就会显示由git管理的解决方案.如果我尝试编辑任何文件,它会抱怨该文件只读,我无法将其保存在以前的版本中.所以我的问题是Visual Studio 2013有什么方法可以忘记git并将其作为tfs存储库进行管理.我可以从命令行管理git.或者,当我进行更改时,有没有办法让它从tfs repo签出文件?

Eri*_*ric 14

这里概述的解决方案对我很有用:如何永久禁用Visual Studio 2013中的Git集成?

实质上:

  • 将.git文件夹重命名为_git,正如@jessehouwing所说
  • 创建一个名为.git的文本文件,其中只包含"gitdir:/ Path/To/_git"行
  • 将_git添加到.gitignore

Visual Studio现在只使用TFS,git也能正常工作.


jes*_*ing 13

对于您的场景Git-tf可能是一个更好的解决方案,它将根据您的TFVC源控制文件夹创建一个本地git仓库.完成后,您可以从命令行直接将更改从Git推送到TFVC.既然你已经熟悉了命令行,那对你来说可能会很好.

当同一文件夹中存在git repo时,很难强制Visual Studio当前保留在Team Foundation Source Control上.


作为一种可怕的解决方法,请关闭解决方案,将.git文件夹重命名为_git并重新加载解决方案.这应该带回TFVC,但如果没有,那么如果使用file- > source control- > advanced- > ,则将解决方案重新绑定到TFVC Change Source Control.然后检查后,再关闭解决方案,重新命名_git.git,并重新加载.


正如Ed在评论中提到的那样,您可以将.git文件夹移动到另一个文件夹,如下所示:

 \MyProjects
    \GitRoot
     |  \.git
     \MySolution
      \MyFirstProject
      \MySecondProject
Run Code Online (Sandbox Code Playgroud)

这允许Visual Studio使用TFVC绑定,您可以使用git --git-dir=\MyProjects\GitRoot\.git命令参数告诉git命令行.git目录在其他地方 .

您可以设置一个名为的环境变量GIT_DIR,以便一次性修复,如@hlovdal所述.


还有另一个技巧@Eric提到它创建了一个文本文件名.git,其中包含以下内容:

gitdir: _git
Run Code Online (Sandbox Code Playgroud)

将.git文件夹重命名为_git,然后确保添加_git.gitignore

提示:要创建以.Windows资源管理器启动的文件,您可以使用New/ Text Document选项:

在此输入图像描述

然后命名文件.git.(确保勾选Show file Extensions选项):

在此输入图像描述


Agh*_*oub 12

我建议这些步骤:

  1. 转到TOOLS TabVisual Studio
  2. 选择Options项目
  3. 在左侧,选择 Source Control
  4. Plugin Selection项目中,输入None相关的下拉列表 在此输入图像描述

  • 更改后退卸载解决方案,当您加载解决方案时,它会返回到git. (4认同)
  • 这会禁用我不想放松的tfs集成.我想强制TFS而不是git.但强迫选择TFS让我的解决方案卸载.一旦我加载它,我再次受到git源控制的欢迎.任何切换到tfs的尝试都会卸载我的解决方案,我们再来一次. (3认同)