即使在处理diff -b
时,我也始终使用git repo
制作补丁。
git diff / git format-patch
内部是否也使用了linux / unix diff
命令? (我知道git diff/git format-patch
)patch -p1
与git apply
不同。我可以应用diff
命令生成的补丁(diff -b
)并使用git diff
申请吗?git diff/apply
时使用git
是一种好习惯吗?我一直在使用diff/patch
并且从未遇到任何问题。如果我对上述事情的了解不充分,请纠正我。
答案 0 :(得分:5)
按顺序:
Git有自己的内置差异,但两者的输出非常相似,给出了正确的选项。使用内置差异和git diff
前端可以获得大量自动化功能,而输出始终是git apply
或git am
所希望的。简而言之,它只是方便。
我已完成此类操作(将git diff
输出到patch
,或将diff
输出到git apply
)。它有效,虽然偶尔我不得不在这里和那里编辑东西以使它工作,这是一个痛苦。如果我想要git diff
或git apply
补丁,那么获得git am
会更加方便。一般来说,最大的可观察差异是git apply
默认情况下不会部分应用:您必须添加--reject
才能使其像默认情况一样。 (另外,所有.orig
个文件......)
是的,因为说的方便。当您进一步使用git format-patch
和git am
时,您可以批量应用一系列补丁,维护提交消息(包括作者信息等),并自动提交所有内容。