git - 如何让 git 和 tfs 在 MSVS2013 中并行工作?

标签 git visual-studio version-control tfs merge

啊!我们在工作中使用 TFS,但我的经理不想使用它的分支功能来管理影响 200-300 个文件的大型自动修改更改。必须查看每个文件以确认该 mod 是合法的。因此,我们改为使用 TFS 的搁置功能,其他开发人员将 pull 下搁架集,与主干 merge 并确认更改是合法的。然后我时不时地把行李箱 merge 回架子上。听起来很费解?恕我直言,你是对的。虽然我是这样想的,但在主干和货架集上的文件中同一行的更改会导致冲突,如果我没记错的话,如果我将主干 merge 到分支上,分支上就不会发生冲突取消我对主干的更改?我实际上不确定如何解决这个问题,所以有关此的任何信息都会有用。

因此,为了查看和管理我在 shelfset 中的更改并查看 merge 的内容,我求助于拥有一个本地 git 存储库。它运行良好,但我发现 MSVS2013 默认将 git 作为管理存储库,这使我无法连接到 tfs 存储库。

有没有办法让 MSVS2013 正常运行?我什至无法通过告诉它使用 TFS 数据库来让它跳回 TFS。 :( 如果我可以在两者之间来回切换,那将是最佳选择,但即使我可以将其锁定到 TFS 也会有很大帮助,然后我将只使用 git 的命令行界面。

编辑:我有一个解决方法,我将 .git 目录更改为其他目录,加载解决方案,然后将目录重命名回 .git。是否有另一种方法可以锁定 MSVS 以更永久地使用 TFS?

最佳答案

我在使用 TFS 时遇到了类似的问题,但我想在本地使用 Git。我是这样解决的。据我所知,Visual Studio 2013 将 TFS 作为源代码控制,我可以从命令行执行所有 git 操作,而不会产生任何副作用。

1) 在 repo root 中将 stash 文件夹 .git 重命名为 git.dir
2) 在repo root 中创建一个新文件.git 并添加一行gitdir: git.dir
3) 转到现在重命名的文件夹 git.dir 并在 config 下添加一行 [core] worktree = ../
4) 在.gitignore 添加git.dir/

关于git - 如何让 git 和 tfs 在 MSVS2013 中并行工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21784362/

相关文章:

由于 SSH 错误,Git 无法推送 puttycyg

git - 如何比较 Git 中的变更集?

尽管已进行更改,但 git push 不更新文件

winforms - 如何在 Visual Studio 中创建 Windows 控件库项目?

visual-studio - 如何将 Visual Studio 2015 Update 1 升级到 Update 2?

version-control - 代码的自动语义版本控制

git - 不小心从错误的分支分支出来,当我想 merge 到主分支时,我必须 merge 两个分支

Git子树 merge 删除正在 merge 到的分支中的更改

git - 取消链接文件失败。我应该再试一次吗?

visual-studio - Nuget 包管理器在 VS 2015 中无响应