我有一个基于eleventy-base-blog
repo克隆的博客。当我克隆它时,我在分支中保留了原始代码master
,并在我自己的分支中进行了所有自定义和内容更改(因此,如果我弄乱了,blog
我可以通过从 pristine 创建一个新分支轻松地从头开始master
事物)。
显然,我自定义并更改了我的版本,随着时间的推移,它与上游版本以及我的本地master
分支不同。
我最近意识到我可能错过了上游的重要错误修复、改进和新功能,所以我研究了如何更新我的 fork 以保持最新状态。
经过大量搜索并试图从那里的所有建议范围( 1、2、3 )中弄清楚,我找到的答案似乎是 use git rebase
,所以我尝试这样做:
git checkout master
git pull upstream master
git checkout blog
git rebase master
(这表明我应该这样做fetch && reset --hard
而不是pull
)
但这最终导致了大量的合并冲突,我不得不煞费苦心地进行手动修复。似乎我的整个提交历史需要再进行一轮编辑,然后
git rebase --continue
或其他(请参见此处的场景#1 )。我真的不想每次想要获得上游更新时都必须做所有这些。没想到会有这么多冲突。
那么,有什么更好的方法(如果有的话)可以更无缝地升级到最新版本eleventy-base-blog
,而无需手动保留我自己的所有自定义和编辑?我觉得我错过了一些东西,知道如何更好地做到这一点会很好。然后我可能会贡献一个很好的更新过程,以包含在eleventy-base-blog
.