zat*_*ine 125 git diff patch git-diff git-apply
我在基于WordPress的项目上工作,我想在每个新版本的WP上修补我的项目.为此,我想在两个提交或标签之间生成一个补丁.
例如,在我的回购中,/www/WP我这样做:
$git patch-format com1..com2 --stdout > ~/patchs/mypatch.patch
要么
$git patch-format tag1..tag2 --stdout > ~/patchs/mypatch.patch
/www/WP git natif WordPress
/www/myproject 我的git项目基于WordPress
该git apply命令行是不行的,我想是因为我们是在不同的存储库.
我可以生成一个没有提交的补丁文件,只是一个差异并将其应用到另一个git存储库吗?
谢谢你.
Enr*_*lio 199
您可以使用git diff以生成适用于以下内容的统一差异git apply:
git diff tag1..tag2 > mypatch.patch
然后,您可以应用生成的补丁:
git apply mypatch.patch
ken*_*orb 40
要为多次提交生成补丁,您应该使用format-patchgit命令,例如
git format-patch -k --stdout R1..R2
这会将您的提交导出为邮箱格式的补丁文件.
要为上次提交生成补丁,请运行:
git format-patch -k --stdout HEAD^
然后在另一个存储库中通过amgit命令应用补丁,例如
git am -3 -k file.patch
见:man git-format-patch和git-am.