以下git命令有什么区别?
git diff HEAD
git diff HEAD^
git diff --cached
或同义词git diff --staged
git diff
最佳答案
git diff HEAD
- 显示自上次提交后发生的变化。git diff HEAD^
- 显示自最近一次提交之前以来发生的变化。git diff --cached
- 显示通过git add
添加到索引但尚未提交的内容。git diff
- 显示已更改但尚未通过git add
添加到索引的内容。
看起来像这样:
Working
Directory <----+--------+------+
| | | |
| | | |
V | | |
"git add" | | |
| diff | |
| | | |
V | | |
Index <----+ diff HEAD |
| | | |
| | | |
V | | |
"git commit" | | |
| diff --cached | |
| diff --staged | |
V | | |
HEAD <----+--------+ |
| |
| diff HEAD^
V |
previous "git commit" |
| |
| |
V |
HEAD^ <--------------------+
关于git - 这些 git diff 命令之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3686452/