将主仓库更改应用于重复存储库

时间:2016-10-06 08:37:42

标签: git github

根据https://help.github.com/articles/duplicating-a-repository/上的选项1,我有一个git镜像,我想在实际主人身上应用所做的更改。

我将我的仓库中的最新提交标识为提交2f7...所以我这样做:

master$ git format-patch 2f7... --stdout > fix

然后将fix复制到mirror并执行

mirror$ git apply --check fix
error: patch failed: .travis.yml:1
error: .travis.yml: patch does not apply
error: include/univalue.h: No such file or directory
error: lib/univalue.cpp: No such file or directory

镜像与母版相比没有任何变化。

如何在回购A中将提交XXX后的提交应用到回购B中?

1 个答案:

答案 0 :(得分:2)

您可能想要做的是:

  1. 将原始仓库添加为远程(可能已经是),让我们说名为“上游”
  2. 结帐到您最新的提交/分支
  3. $ git rebase -i upstream / master
  4. 解决合并冲突,可能是很多;之后$ git rebase - 继续并重复直到完成
  5. $ git push origin --force
  6. 之后,看起来你的提交是在上游更改后完成的。或者,您可以使用$ git merge upstream / master - 它可以减少解决冲突的工作量,但会使历史记录复杂化。