在git存储库中维护我的补丁

4

我正在学习如何使用git,并想要跟随一个项目。所以我clone了这个项目,现在我有了最新的代码。

如果我想要添加一个或多个patch到那些代码中,最好的方法是什么(并运行makemake install),同时仍然能够从主repo执行git pull而不创建冲突?

我尝试过创建分支,但我不确定这是否是正确的方法。

我只想能够跟上主repo中的新代码,但也能够在推出新版本时应用我的贡献。

我想知道在哪里可以学习如何做到这一点,但我不确定该如何搜索。


你的patches是什么意思?当使用版本控制系统时,你不需要patches,因为你的commits就像那些patches一样。 - Shahbaz
可能是维护第三方代码上的自定义补丁的重复问题。 - Lesmana
2个回答

5
您可能正在寻找的是git rebase:从远程跟踪分支创建一个本地分支,并调用git config branch.mylocalbranch.rebase true(其中“mylocalbranch”是您的本地分支名称)。现在,您可以制作本地补丁并提交它们。每次使用git pull获取更新时,您的本地修改都会被“重新应用”(应用于您刚刚拉取的内容之上)。

请注意不要将本地修改(例如本地分支的HEAD)推送到远程,因为这可能不是您想要的。有关更多详细信息,请参见man git-rebase


0
从你的描述来看,我猜测分支确实是你想要的。你想在自己的分支上推送到服务器,并与其他分支上发生的任何事情合并。
学习分支的最佳方法是尝试几次,制造冲突,在合并后解决它们,你就会掌握它。你可以从这里开始。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接