Kit*_*911 36 git file commit git-diff git-commit
我有一个未跟踪的文件没有出现在git diff中,当我将它添加到'changes to be committed'区域时,它仍然没有显示在git diff中.我展示了一个git status -v,当我做对头上的差异.
我仍然是git的新手,所以有人可以告诉我,如果文件将被提交,即使它没有出现在常规差异中,因为它已被添加到临时区域?
Dav*_*ain 47
如果你想看到差异中的阶段性变化,你仍然可以使用git diff,你只需要传递--staged旗帜:
david@pav:~/dummy_repo$ echo "Hello, world" > hello.txt
david@pav:~/dummy_repo$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# hello.txt
nothing added to commit but untracked files present
david@pav:~/dummy_repo$ git add hello.txt
david@pav:~/dummy_repo$ git diff
david@pav:~/dummy_repo$ git diff --staged
diff --git a/hello.txt b/hello.txt
new file mode 100644
index 0000000..76d5293
--- /dev/null
+++ b/hello.txt
@@ -0,0 +1 @@
+Hello, world
Run Code Online (Sandbox Code Playgroud)
如果你只关心哪些文件被暂存,你当然可以做一个git status,但git diff --staged --name-only会在每一行上给出每个分段的文件名.
mil*_*sky 27
要查看自上次提交以来工作树中的所有更改(包括新文件),请使用:
git diff HEAD
Run Code Online (Sandbox Code Playgroud)
在这里查看更多示例:git-diff
正如你所见.它显示在git status,所以是的,它会在你的git commit时候提交.
您可能会发现使用gitx(Mac)或gitg(Linux)等可视化git工具很有帮助,
它有漂亮的面板,以显示你上演,而不是上演等.

我的截图似乎很多,因为我目前没有对该状态进行任何更改.