显示提交之间的差异
我在Ubuntu 10.4上使用git。
我向主人做了一些承诺。
但是,我想要了解这些提交之间的区别。 他们都在我的主分支。
例如:
commit dj374 made changes commit y4746 made changes commit k73ud made changes 所以我想知道k73ud和dj374的区别。 但是,当我做了以下,我看不到我在k73ud做的变化。
 git diff k73ud..dj374 > master.patch 
非常感谢您的任何build议,
你试过了吗
 git diff k73ud^..dj374 
 确保在所得到的差异中包含k73ud所有变化? 
  git diff比较两个端点( 而不是提交范围 )。 
 由于OP要查看k73ud引入的变化,他/她需要在k73ud : k73ud^ (或k73ud^1或k73ud~ )的第一个父提交之间进行k73ud 。 
 这样, diff结果将包括自 k73ud家长以来的变化(意味着包括k73ud本身的变化),而不是从 k73ud (直到dj374 )引入的变化。 
要查看之间的区别…
…你的工作副本和分期区域:
 % git diff 
…中转区和最新的承诺:
 % git diff --staged 
…你的工作副本并提交4ac0a6733:
 % git diff 4ac0a6733 
…提交4ac0a6733和最新的提交:
 % git diff 4ac0a6733 HEAD 
…提交4ac0a6733并提交826793951
 % git diff 4ac0a6733 826793951 
有关更多解释,请参阅官方文档 。
如果你想查看每个提交引入的更改,请尝试“git log -p”
 我使用gitk来查看差异。 
 gitk k73ud..dj374 
它有一个GUI模式,使审查更容易。
-  gitk --all
- select第一个提交
- 右键点击另一个,然后diffselect→this
要查看2个不同的提交(让我们称之为a,b)之间的差异,使用
 git diff a..b 
*请注意,a和b之间的差异与b和a相反。
要查看上次提交和尚未提交的更改之间的差异,请使用
 git diff 
如果您想稍后再回到diff,可以将其保存在文件中。
 git diff a..b > ../project.diff 
检查这个命令是否有区别。
 git difftool --dir-diff