【发布时间】:2016-01-14 17:19:09
【问题描述】:
我有一个 Git 存储库,其中有很多提交和单独的代码,比如说
/Proj1
我还有另一个 Git 存储库,其中包含 1 个不常见的提交,
/Proj2
如何合并两个存储库并让历史记录与父提交正确显示?基本上,两个存储库之间没有任何共享提交,但我想要一个包含两组代码的存储库。我希望它看起来像:
proj2 commit
proj2 commit
proj1 commit (root)
我知道 rebase 是一个选项,但不确定使用 --onto 是否会替换根提交(如果我从远程 repo 和 rebase --onto --root master 进行提取似乎会这样做)。
我尝试使用 git 子树,最初看起来它们可以工作,但是当我使用 git-tfs 推送我的提交时,我收到一个错误提示
警告:父 ... 不属于 TFS 跟踪分支(未在 TFS 中检查),将被忽略
并且提交实际上并没有向上推(也可能因为它是一个子树)。
编辑:我只想得到 1 个 repo (Proj1),但 Proj2 的提交是在 Proj1 在主分支上提交之后进行的。
【问题讨论】:
-
每个项目应该有一个 Git 存储库。为什么要合并它们?
-
Git + TFS?你这个可怜的可怜的灵魂。
-
我已经编辑了我的问题。基本上有 2 组代码位于不同的存储库中(没有共同提交),我希望将第二个存储库的历史移入第一个存储库。
-
@Cupcake git-tf 更好?
-
开个玩笑,别介意
;)