如何详细显示 Git 中未提交的更改和一些 Git 差异
How to show uncommitted changes in Git and some Git diffs in detail
如何在 Git 中显示未提交的更改?
我 STFW'ed,但这些命令不起作用:
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git status
On branch teyan/psservice
Your branch is up-to-date with 'origin/teyan/psservice'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: psservice.c
modified: psservice.vcxproj.filters
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff master
fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
您已经进行了更改(大概是 运行ning git add
),所以为了获得它们的差异,您需要 运行:
git diff --cached
(普通的 git diff
只会显示未暂存的更改。)
例如:
How to show uncommitted changes in Git
您要查找的命令是git diff
。
git diff
- Show changes between commits, commit and working tree, etc
这是它公开的一些您可以使用的选项
git diff
(无参数)
打印出您的工作目录和索引之间的差异。
git diff --cached
:
打印出 index 和 HEAD(当前提交)之间的差异。
git diff HEAD
:
打印出您的 工作目录 和 HEAD 之间的差异。
git diff --name-only
仅显示已更改文件的名称。
git diff --name-status
仅显示已更改文件的 名称和状态 。
git diff --color-words
逐字差异而不是逐行差异。
这是 git diff --color-words
的输出示例:
对我来说,唯一有用的是
git diff HEAD
包括暂存文件,git diff --cached
仅显示暂存文件。
我遇到了 git status
显示更改,但 git diff
什么也没有打印的情况,尽管有几行发生了更改。然而:
$ git diff data.txt > myfile
$ cat myfile
<prints diff>
Git 2.20.1 raspbian。 git checkout
、git pull
等其他命令正在毫无问题地打印到标准输出。
如何在 Git 中显示未提交的更改?
我 STFW'ed,但这些命令不起作用:
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git status
On branch teyan/psservice
Your branch is up-to-date with 'origin/teyan/psservice'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: psservice.c
modified: psservice.vcxproj.filters
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff master
fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
您已经进行了更改(大概是 运行ning git add
),所以为了获得它们的差异,您需要 运行:
git diff --cached
(普通的 git diff
只会显示未暂存的更改。)
例如:
How to show uncommitted changes in Git
您要查找的命令是git diff
。
git diff
- Show changes between commits, commit and working tree, etc
这是它公开的一些您可以使用的选项
git diff
(无参数)
打印出您的工作目录和索引之间的差异。
git diff --cached
:
打印出 index 和 HEAD(当前提交)之间的差异。
git diff HEAD
:
打印出您的 工作目录 和 HEAD 之间的差异。
git diff --name-only
仅显示已更改文件的名称。
git diff --name-status
仅显示已更改文件的 名称和状态 。
git diff --color-words
逐字差异而不是逐行差异。
这是 git diff --color-words
的输出示例:
对我来说,唯一有用的是
git diff HEAD
包括暂存文件,git diff --cached
仅显示暂存文件。
我遇到了 git status
显示更改,但 git diff
什么也没有打印的情况,尽管有几行发生了更改。然而:
$ git diff data.txt > myfile
$ cat myfile
<prints diff>
Git 2.20.1 raspbian。 git checkout
、git pull
等其他命令正在毫无问题地打印到标准输出。