Git diff是比较索引和工作副本,还是最后一次提交和工作副本之间的差异?

4
在git 参考文献中,它说明了:
一个简单的git diff将以统一的diff格式(补丁)显示您在项目中自上次提交以来已更改但尚未准备好为下一次提交快照而暂存的代码或内容。
我的做法是,提交了一个包含文本A的文件。然后我将该文件中的文本从A更改为B并进行了暂存(未提交)。最后,我将文件内容更改为C。现在当我运行git diff时,它会显示BC之间的差异。但我想看到AC之间的差异。我该怎么做?
1个回答

7

如果您想比较其他事物之间的差异,例如,请查看以下示例:

您可以运行

git diff HEAD^       #check against parent of last commit
git diff HEAD^^      #check against grandparent of last commit
git diff HEAD~5      #check against 5 commits ago, 5 can be replaced with any number
git diff HEAD^..HEAD #check second most recent commit against most recent
git diff SHA1 SHA2   #check difference between two pre-defined commits
git diff --staged    #check staged vs current index (HEAD)

你也可以基于时间变化来进行操作,但这需要更高级的技能。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接