git diff一直在用,用起来也很简单,但是如果不是很清楚细节的话,感觉是白用,总是看到有人说++ --但是究竟谁加了谁减了,很多人都是迷糊的包括网上很多帖子也一样,这样根本达不到你比较想要得到的结果。
首先简单的画一下git管理的3个区:
1.如果暂存区中没有内容,则git diff是拿工作区和版本库作比较,有顺序的;
2.如果暂存区中有内容,则git diff是拿工作区和暂存区作比较,有顺序的;
3.如果暂存区中有内容,想让暂存区和版本库作比较,则用git diff –staged;
注意:git提交的是暂存区的修改,而不是文件。
1.查看2个版本之间的不同:
git diff head^^ head
head^或者head~1表示上一个版本;
head^^或者head~2表示上上一个版本;
git diff head^^ head :表示当前版本与上上个版本比较的区别,顺序是当前比上上,如果是++就是当前有,前面没有,如果是--,则表示当前没有,之前有。
2.git diff –w这个命令表示查看去除空格之后的差异;
3.git diff 分支1 分支2 或者git diff commit1 commit2
比较2个分支最后一次提交的不同或者比较2个commit号之间的不同,注意这是有顺序的,是后一个比前一个,++就是后者有,前者没有;- -就是后者删减没有了,但是前者有。commit号可以通过git log查看。