git

git: 仅列出所有缓存修改的文件

根据
http://www.kernel.org/pub/soft ... tions
git,
git stash list

将采用您可以转移到的任何选项
git log

.

我想这样做,这是通过选择
--stat


git stash list

. 它有效,但似乎它显示了repo中的每个文件。

现在我知道有
git stash show

, 这将仅显示已更改的那些文件,但是我需要手动通过并检查它们中的每一个。

有没有办法武力 git 告诉我一张缓存列表

只要

随着每个人都隐藏的变化?
已邀请:

帅驴

赞同来自:

更新 Git v2.2 并进一步

:


git stash list --stat

在职的。

https://github.com/git/git/blo ... 9-L32
自从这个问题被问到以来,困境 41 不再适用。 以。。。开始 Git v2.2, 你

你可以

只是去
--stat


git stash list

, 他会表现得直觉。

您还可以使用任何其他文件列表设置。 , 如那个
--name-status

,
--name-only


--raw

, 可以用来
git log

.

下面的初始答案是适用的,如果您使用该版本 Git 到 v2.2.

原始答案

:

这就是我认为的方式:


git stash list | while IFS=: read STASH ETC; do echo "$STASH: $ETC"; git diff --stat $STASH~..$STASH --; done


/验证B. Git Bash msysgit./


git stash show $STASH

反而
git diff --stat $STASH~..$STASH

也工作,但慢慢地慢慢地。

冰洋

赞同来自:

git stash list --name-status


出口:


stash@{0}: WIP on branch-name: face0ff97 Commit message

M path/to/modified/file.cpp
A path/to/added/file.xml
D path/to/deleted/file.kt
stash@{1}: WIP on branch-name: 953add384 Commit message

...

帅驴

赞同来自:

git stash show -p

显示补丁缓存 - 这就是我所相信的,你问。

对于特定的缓存,您可以执行以下操作:
git stash show -p stash@{x}

, 其中x是缓存 # 在堆栈中。

风见雨下

赞同来自:

如果您列出了一个缓存的所有文件,例如,最后的缓存,请使用

git show stash@{0} -

要回复问题请先登录注册