git:将本地分支合并到不同的上游/主服务器

时间:2020-10-02 05:52:17

标签: git github

所以我有一个本地克隆的存储库,在新分支中对它进行了一些更改,同时从上游维护master分支。由于对许多master分支进行了实质性更改,因此我对master分支的较早提交的修改现在有所分歧。特别是对一个文件(我已经对其进行了几次更改),在上游将其拆分为三个文件,我想将编辑内容合并为其中一个。但是由于新文件的命名与以前的文件完全不同,所以我担心通用合并会带来很多麻烦(请参阅下文,我的意思是);出于同样的原因,生成差异/补丁也不起作用。我该如何使分支与上游融合?

作为参考,我的分支机构位于https://github.com/brihadeesh/elegant-emacs/tree/dev 您可能会在master分支中注意到,elegance.el(尽管它仍然存在)被分为两个主题文件,现在是elegant.el,并且我的分支与master一样(除了我添加的一些其他文件),我必须将对dev/elegance.el所做的更改合并到master/elegant.el中,同时还要容纳来自上游的更改。

1 个答案:

答案 0 :(得分:0)

我做了一些思考,也许已经想出了一种方法。

  1. 我首先通过从分支运行,将新文件elegant.el添加到分支:
git checkout master elegant.el
  1. 使用我的elegance.el版本与elegant.el生成差异(因为从技术上讲,它们都具有相同的结构),然后手动修补每个差异块,以验证没有块添加以前删除的代码位。

  2. 检查并合并到master中供我使用,并可能设置另一个分支来获取/合并上游/ master提交。

有人在我试用时可以验证吗?