【问题标题】:Import TFS history from another project to Git将 TFS 历史从另一个项目导入到 Git
【发布时间】:2019-04-28 00:37:17
【问题描述】:

我正在尝试使用 git-tfs 将项目从 TFS 迁移到 Git,该项目继承了 TFS 中较旧的不再使用的项目的历史记录。只是为了让事情更清楚:旧项目有 5 年的历史,然后,一年前创建了新项目,从旧项目分支。

我需要保留所有历史记录和每个分支。
从新项目中克隆多个分支没有问题,但是,我在阅读存储库的完整历史记录时遇到了困难。

即clone 命令从新项目下的第一个提交开始读取提交,并忽略所有旧的提交,来自上一个项目。

在克隆操作期间,当文件链接到上一个项目上的提交时,我看到多个未找到提交的错误。

在 Visual Studio 中,每个文件的历史都链接到上一个项目中所做的提交。所以在 Visual Studio 中我可以看到 6 年的历史,而不是 1 年。

我可以单独克隆旧项目而不会出现问题(克隆前 5 年的历史),但我希望将两个历史合并,以便在检查每个文件的历史时可以看到整个编辑历史在 Git 中。

如何将两个 VSTS 项目中的提交提取到一个 git 存储库中?

谢谢!

【问题讨论】:

    标签: git tfs git-tfs


    【解决方案1】:

    我可以单独克隆旧项目而不会出现问题(克隆前 5 年的历史),但我希望将两个历史合并,以便在检查每个文件的历史时可以看到整个编辑历史在 Git 中。

    如果您可以使用 git-tfs 将 2 个历史记录克隆到 2 个不同的 git 存储库中,那么您可以在拥有 2 个存储库后:

    1. 在其中一个存储库中,向另一个存储库添加一个遥控器
    2. git fetch --all
    3. 使用git replace链接两个历史:https://git-scm.com/docs/git-replace#git-replace---graftltcommitgtltparentgt82308203

    【讨论】:

      猜你喜欢
      • 2022-01-18
      • 2010-09-11
      • 2019-12-14
      • 2014-03-04
      • 1970-01-01
      • 2013-03-10
      • 2013-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多