所以我有一个本地克隆的存储库,在新分支中对它进行了一些更改,同时从上游维护master分支。由于对许多master分支进行了实质性更改,因此我对master分支的较早提交的修改现在有所分歧。特别是对一个文件(我已经对其进行了几次更改),在上游将其拆分为三个文件,我想将编辑内容合并为其中一个。但是由于新文件的命名与以前的文件完全不同,所以我担心通用合并会带来很多麻烦(请参阅下文,我的意思是);出于同样的原因,生成差异/补丁也不起作用。我该如何使分支与上游融合?
作为参考,我的分支机构位于https://github.com/brihadeesh/elegant-emacs/tree/dev
您可能会在master分支中注意到,elegance.el
(尽管它仍然存在)被分为两个主题文件,现在是elegant.el
,并且我的分支与master一样(除了我添加的一些其他文件),我必须将对dev/elegance.el
所做的更改合并到master/elegant.el
中,同时还要容纳来自上游的更改。
答案 0 :(得分:0)
我做了一些思考,也许已经想出了一种方法。
elegant.el
添加到分支:git checkout master elegant.el
使用我的elegance.el
版本与elegant.el
生成差异(因为从技术上讲,它们都具有相同的结构),然后手动修补每个差异块,以验证没有块添加以前删除的代码位。
检查并合并到master中供我使用,并可能设置另一个分支来获取/合并上游/ master提交。
有人在我试用时可以验证吗?