用一个没有经验的成员跟进我之前的问题Git 工作流程。 我选择让他发送补丁给我。问题是我以前没有使用过补丁,也找不到解释工作流程的教程。
我想要的是让他从 repo 中提取最新的代码。创建一个分支,在他完成后提交他的更改,我希望他为它创建一个补丁,这样我就可以将它集成到 master 中。
你能告诉我如何在这种情况下创建补丁并将其应用于我的主人吗?
用一个没有经验的成员跟进我之前的问题Git 工作流程。 我选择让他发送补丁给我。问题是我以前没有使用过补丁,也找不到解释工作流程的教程。
我想要的是让他从 repo 中提取最新的代码。创建一个分支,在他完成后提交他的更改,我希望他为它创建一个补丁,这样我就可以将它集成到 master 中。
你能告诉我如何在这种情况下创建补丁并将其应用于我的主人吗?
使用git-format-patch(1)创建补丁,或者,如果您想发送电子邮件,只需git-send-email(1)。
然后使用git-apply(1)或电子邮件应用git-am(1)。
这相对容易。假设分支是 foo,并且来自 master 的补丁:
# Put every patch for revisions from master to foo into tmp: 0001, 0002, etc...
git format-patch master...foo --stdout > yo
....
# You apply the patches with git am
cat yo | git am
请注意,由于提交者的差异,它不会为您提供与原始版本相同的修订。在这种情况下,这有点复杂(http://home.regit.org/?page_id=32)
不承诺:
git pull
<hack>
git diff -p > myfirstpatch.txt
然后他可以通过电子邮件将补丁发送给您。
如果他确实提交了,那么只需给 diff 一些论据。
git diff blah...blah2 -p >mysecondpatch.txt
然后你就这样做:
git apply mysecondpatch.txt