关于git-tfs:如何将远程tfs分支合并到git分支中?

How do I merge a remote tfs branch into a git branch?

我需要将来自远程TFS存储库分支的更改合并到Git存储库分支中。

克隆将创建一个全新的Git存储库,我不想这样。我想合并到现有的Git存储库中。

澄清:

  • 几周前,一位同事克隆了两个TFS存储库:repoa、repob
  • 那个同事离开了公司。
  • 我们决定只需要一个存储库,所以我将repoa合并到repob中,如下所述:合并两个git存储库而不破坏文件历史记录
  • 从那时起,所有开发团队都在使用repob,除了一个。
  • 一个团队继续开发并提交到TFS存储库中。
  • 现在我们想让最后一个团队开始使用git;我们需要合并他们的工作,因为原始克隆(tfs repoa)进入git存储库(repob)。


We decided we wanted a single repository, so I merged RepoA into RepoB as described here: Merge two Git repositories without breaking file history

我不太明白你在这里做了什么,但我认为这次行动没有太大破坏力;)

我还假设(如果我理解得很好)仍然使用tfvc的团队正在一个分支中提交,该分支是在RepoA中克隆的。

您必须做的第一件事是验证在来自RepoA的提交混合中仍然有git-tfs所需的git-tfs元数据。它们应该看起来像git-tfs-id: [https://yourtfs/tfs/TFS16]$/vtccds/trunk;C26497

既然找到了这些提交,那么就签出最后一个从TFS检索到的分支。

如果git-tfs的版本高于v0.20(如果需要,可以更新),那么只需执行git tfs fetch。如果您有旧版本,则在执行提取之前需要一个git tfs bootstrap

如果一切正常,那么在很长一段时间之后,您应该拥有与在TFS上提交的团队的变更集相对应的所有提交。

然后,你可以用它做你想做的事情,合并分支…