你如何把一个git diff文件,并将其应用到同一个存储库副本的本地分支?

我有一个由同事创build的.diff文件,并希望将差异文件中列出的更改应用到完全相同的存储库的本地分支。 我没有访问该工作人员的电脑或分支,用于生成这个差异文件。

显然,我可以一行一行地重新input所有内容,但是我宁愿不让系统遭受人为错误。 什么是最简单的方法来做到这一点?

将diff文件复制到存储库的根目录,然后执行:

git apply yourcoworkers.diff 

有关apply命令的更多信息可在其手册页上find 。

顺便说一句:通过文件交换整个提交的一个更好的方法是在发送者上的命令git format-patch和在接收者上的git format-patch的组合,因为它也传送作者信息和提交信息。

如果修补程序应用程序失败,并且如果提交差异是从您的回购库中生成的,则可以使用应用程序的-3选项来尝试在更改中进行合并。

它也适用于Unixpipe道,如下所示:

 git diff d892531 815a3b5 | git apply