我使用git diff生成补丁,然后将其应用到远程服务器上以更新项目。
在本地,我运行:
git diff --no-prefix HEAD~1 HEAD > example.patch
将 example.patch 上传到远程服务器并运行:
patch --dry-run -p0 < example.patch
如果干运行成功,我会运行:
patch -p0 < example.patch
这段代码很好用,但是在处理二进制文件时会出现问题。今天我发现可以使用:
git diff --no-prefix --binary HEAD~1 HEAD > example.patch
问题在于生成的补丁文件无法使用patch工具进行应用。
没有在服务器上安装git时,如何应用这些二进制补丁文件?
我希望能保留使用--dry-run的功能。
谢谢。