使用Git,您如何发现当前版本和上一版本之间的差异?
git diff last version:HEAD
使用Git,您如何发现当前版本和上一版本之间的差异?
git diff last version:HEAD
当前回答
以显示提交中的个别更改。
git show Head~0
显示提交中累积的更改。
git diff Head~0
其中0是所需的提交次数。
其他回答
正如amalloy在评论中指出的,如果“当前版本和最后版本”是指最后一次提交和之前的提交,那么可以简单地使用
git show
如果已添加但尚未提交,请使用缓存标志:
git diff --cached --color
我在安装了EclipseEGit插件的EclipseIDE中使用Bitbucket。
我将文件与任何版本的历史记录(如SVN)进行比较。
菜单项目资源管理器→ 文件→ 右键单击→ 团队→ 在历史中显示。
这将带来该文件上所有更改的历史记录。现在按住Ctrl键单击并选择任意两个版本→ “相互比较”。
你也可以这样做:
与上一次提交进行比较
git diff --name-status HEAD~1..HEAD
与当前和前两次提交进行比较
git diff --name-status HEAD~2..HEAD
我不太理解“最后版本”的含义。
由于可以使用HEAD^访问上一次提交,我认为您正在寻找以下内容:
git diff HEAD^ HEAD
这也适用于:commithash
git diff $commithash^ $commithash
从Git1.8.5开始,@是HEAD的别名,因此您可以使用:
git diff @~..@
以下也将起作用:
git show
如果您想知道head和任何提交之间的区别,可以使用:
git diff commit_id HEAD
这将启动您的视觉差异工具(如果已配置):
git difftool HEAD^ HEAD
由于与HEAD的比较是默认的,因此可以省略它(如Orient所指出的):
git diff @^
git diff HEAD^
git diff commit_id
警告
@ScottF和@Panzercrisis在评论中解释说,在Windows上必须使用~字符而不是^。