我正在处理基于WordPress的项目,想要在每个新版本的WP发布时对我的项目进行修补。为此,我希望能够在两个提交或标签之间生成一个修补程序。
例如,在我的存储库/www/WP
中执行以下操作:
$ git patch-format com1..com2 --stdout > '~/patchs/mypatch.patch'
# or
$ git patch-format tag1..tag2 --stdout > '~/patchs/mypatch.patch'
/www/WP
是本机上的 WordPress,使用原生的 git。
/www/myproject
是我的基于 WordPress 的 git 项目。
我认为 git apply
命令行不起作用,可能是因为我们在不同的代码库中。
我能否生成一个差异文件而无需提交(commit),然后将其应用到另一个 git 代码库中?
$git diff -u tag1..tag2 > mypatch.patch
和$git apply --stat > mypatch.patch
,答案是0 files changed
。如果有其他建议,请告诉我 :) - zataminegit diff -p tag1 tag2 > my.patch
命令,这个命令运行得很好。 - barclaygit diff 0.0.1 0.0.2 > changes.patch
创建一个补丁。 - Mahtab Alamgit diff ...
+git apply ...
不能正确处理已删除/移动的文件,而git format-patch ...
+git am ...
可以。 - Thomas Vincentgit apply --ignore-space-change --ignore-whitespace mypatch.patch
- Yeheshuah