通过将远程的特定分支与特定本地分支进行比较来创build补丁

我一直在使用git几个星期,但现在我想回到这个开源项目。 我已经把我的工作与最新的遥控器合并在一起,通过编辑冲突来完成,而且这一切都看起来应该在gitk中。 现在我需要创build一个针对最新版本(远程)master的补丁。 所以我想下面的命令可以工作:

git format-patch origin:master --stdout > 25032011.patch

但是我得到:

fatal: Invalid object name 'origin'.

所以我明显得到了错误的命令。 那么如何通过比较特定分支的远程特定本地分支创build一个补丁?

使用git format-patch origin/master 。 这会为您签出的分支上的每个提交创build一个补丁文件,这个文件不在origin / master中。

要有一个文件,而不是多个文件,你可以使用

 git format-patch master --stdout > mypatch.patch 

使用它创build一个文件,其中包含当前分支中不在主分支中的所有提交:

 git format-patch master --stdout > mypatch.patch