如何应用使用 git diff 创建的补丁?
你好。
我是Mandai,负责Wild 开发团队。
Git 有一个称为“补丁”的系统。
尽管我有时在无法使用 git stash 时使用它,但我不记得这个超级简单的命令。
所以我决定把它留在我的博客上,这样我就不必忘记它。
创建补丁时
如果要创建补丁,请使用 git diff 命令。
1 | git diff test .txt > test .patch |
一旦您创建了所需数量的补丁,您就可以执行 git重置,事情就会恢复正常。
只要你有补丁文件,就可以将内容更改为当前状态。
默认情况下,差异将显示当前文件及其索引。
您还可以通过指定提交 ID 来获取几代之前的差异。
我从未使用过它,但似乎如果您指定两个提交 ID,则可以在提交 ID 之间进行比较。
应用补丁时
接下来我们来反思一下补丁的内容。
1 | git 应用测试.patch |
就这样。
但是,如果 git apply 时的文件内容与 git diff 时的文件内容不同,则不会应用。
在这种情况下,您可以使用指定提交 ID 并进行 diff 的方法,如 git diff 中简要介绍的那样。
我突然想知道我应该做什么来做与 patch --dry-run 相同的事情,当我研究它时,我发现 --check 选项就是答案。
概括
我们总结了使用 git 创建和应用补丁的步骤。
这是我第一次了解到可以使用 git diff 使用提交 ID 创建补丁,但这是 git 独有的功能,我想有一天尝试一下并感到自豪。
这次旅行的另一个很大的好处是我有机会对 git apply 的 --check 选项做了一些研究。
它还可以用作审查代码时的初步检查。
就是这样。
如果您觉得这篇文章有帮助,请点赞!