如何查看git索引中的更改?

all*_*ode 12 git

说我同意

git add foo.txt
Run Code Online (Sandbox Code Playgroud)

现在,foo的变化在索引中(我假设git已经在跟踪该文件).现在,当我做git diff时,我无法通过这样做看到foo的变化

git diff
Run Code Online (Sandbox Code Playgroud)

git diff在它向我展示这些变化之前,还有一些额外的东西需要吗?

小智 30

  • 仅显示未分级的更改:
git diff
Run Code Online (Sandbox Code Playgroud)
  • 仅显示暂存/缓存的更改:
git diff --cached
Run Code Online (Sandbox Code Playgroud)
  • 要显示缓存和未缓存的更改,请将整个工作树与命名提交(HEAD)进行比较:
git diff HEAD
Run Code Online (Sandbox Code Playgroud)

  • 我来这里是为了寻找一种方法来同时查看缓存和未缓存的更改,因此 +1 提到 `git diff HEAD`。 (2认同)