Kla*_*urn 93
如果尚未向索引添加任何文件(带git add),只需执行
git diff
Run Code Online (Sandbox Code Playgroud)
这将显示工作树和索引之间的差异.
如果已将文件添加到索引,则需要执行此操作以显示索引与上次提交(HEAD)之间的差异.
git diff --cached
Run Code Online (Sandbox Code Playgroud)
最后,如果你想看到工作树中所做的更改与最新的commit(HEAD)相比你可以(正如卡洛斯指出的那样)
git diff HEAD
Run Code Online (Sandbox Code Playgroud)
这些变化的组合git diff和git diff --cached.
tal*_*mjr 20
如果您刚刚进行了提交,或者想要查看上次提交中与当前状态相比发生了哪些变化(假设您有一个干净的工作树),您可以使用:
git diff HEAD^
Run Code Online (Sandbox Code Playgroud)
这将比较HEAD与之前的提交.人们也可以这样做
git diff HEAD^^
Run Code Online (Sandbox Code Playgroud)
比较2提交前的状态.要查看当前状态和某个提交之间的差异,只需执行以下操作:
git diff b6af6qc
Run Code Online (Sandbox Code Playgroud)
b6af6qc提交哈希的示例在哪里.
你尝试过吗git show?
\n\n描述:\n显示一个或多个对象(blob、树、标签和提交)。
\n对于提交,它显示日志消息和文本差异。它还以特殊格式呈现由 git\ndiff-tree --cc 生成的合并提交。
\n摘自 git 帮助
\n
您不需要写入上次提交的 HEAD 或 SHA-1,只需键入git show。
我认为这对您的需求以及其他答案都有帮助,但根据具体情况,打字会少一些,信息会多一些。
\n在这里我添加了实际显示的示例git show:
>> git show\n\ncommit 49832d33b5329fff95ba0a86002ee8d5a762f3ae (HEAD -> my_new_branch, master)\nAuthor: Abimael Dom\xc3\xadnguez <my_mail@mail.com>\nDate: Thu Jan 7 13:05:38 2021 -0600\n\n This is the commit message of the last commit\n\ndiff --git a/some_folder/some_file.txt b/some_folder/some_file.txt\nindex 59fb665..5c36cde 100644\n--- a/some_folder/some_file.txt\n+++ b/some_folder/some_file.txt\n@@ -3,6 +3,6 @@\n This is the content of the last updated file\n some text\n some text\n-text deleted\n+text added\n some text\n some text\n\nRun Code Online (Sandbox Code Playgroud)\n
这也显示了差异以及哪些文件已更改/修改。
$ git status
Run Code Online (Sandbox Code Playgroud)
显示索引文件和当前 HEAD 提交之间有差异的路径、工作树和索引文件之间有差异的路径以及工作树中未被 git 跟踪的路径(并且不会被 gitignore(5) 忽略) )。第一个是通过运行 git commit 提交的内容;第二个和第三个是您可以通过在运行 git commit 之前运行 git add 来提交的内容。
https://www.kernel.org/pub/software/scm/git/docs/git-status.html