我注意到,在处理一两张票时,如果我走开,我不确定我在做什么,什么改变了,等等。

是否有一种方法可以在git添加和提交之前查看给定文件所做的更改?


当前回答

好吧,我的情况下,当你不想关心文件列表。让他们都看看。

当你已经运行git添加到你的文件列表:

$ git diff --cached $(git diff --cached --name-only)

在git的最新版本中,您可以使用—staging also,这是—cached的同义词。

同样可以用于没有添加文件但没有——cached选项。

$ git diff $(git diff --name-only)

“cached”选项的Git命令别名:

$ git config --global alias.diff-cached '!git diff --cached $(git diff --cached --name-only)'

其他回答

git diff <path>/filename

路径可以是完整的系统路径,直到文件或 如果您在项目中,也可以粘贴修改后的文件路径 对于路径使用的修改文件:git状态

你也可以使用git友好的文本编辑器。它们显示已修改的行上的颜色,添加的行显示另一种颜色,删除的行显示另一种颜色,等等。

GitHub的Atom 1.0就是一个很好的文本编辑器。

好吧,我的情况下,当你不想关心文件列表。让他们都看看。

当你已经运行git添加到你的文件列表:

$ git diff --cached $(git diff --cached --name-only)

在git的最新版本中,您可以使用—staging also,这是—cached的同义词。

同样可以用于没有添加文件但没有——cached选项。

$ git diff $(git diff --name-only)

“cached”选项的Git命令别名:

$ git config --global alias.diff-cached '!git diff --cached $(git diff --cached --name-only)'

请记住,您提交的是更改,而不是文件。

由于这个原因,我很少不使用git add -p(或magit等效)来添加我的更改。

使用git-diff:

git diff -- yourfile