题 在没有应用它的情况下查看存储中的内容[重复]


可能重复:
是否可以在git中预览藏匿内容? 

我懂了 这里 你可以申请/取消申请藏匿,甚至可以从藏匿处创建一个新的分支。是否有可能只是在没有实际应用的情况下看到藏匿内容?


1183
2018-05-23 18:26


起源


他没有打电话 stash 一个申请,他指的是申请藏匿的行为。除了术语不清楚,问题是一样的。 - ellotheth
要获得彩色差异输出: git stash show -p stash@{1} >~/.diff && vim ~/.diff (不一定是 vim。任何文本编辑器,只要您的文本编辑器具有语法高亮支持 diff 输出)。 - Trevor Boyd Smith
@TrevorBoydSmith或者只是 git stash show -p stash@{1} | view - - Aryeh Leib Taurog
在centos-7上有点奇怪的观察 view 别名 vi 和 man view 显示手册页 vim。 (我必须改变我的 .bashrc 使用你的新技巧(它比我以前的方式IMO更好)。) - Trevor Boyd Smith


答案:


来自 man git-stash 页:

可以使用git stash list列出此命令隐藏的修改,          用git stash show进行了检查

show [<stash>]
       Show the changes recorded in the stash as a diff between the stashed state and
       its original parent. When no <stash> is given, shows the latest one. By default,
       the command shows the diffstat, but it will accept any format known to git diff
       (e.g., git stash show -p stash@{1} to view the second most recent stash in patch
       form).

因此,要查看最近藏匿的内容,请运行

git stash show -p

要查看任意藏匿的内容,请运行类似的内容

git stash show -p stash@{1}

1670
2018-05-23 18:58



如果只有一个存储,你可以做 git stash show -p。 - Zubin
可以考虑的一个非常有用的功能是列出所有本地存储的内容: git stash list | awk -F: ‘{ print “\n\n\n\n”; print $0; print “\n\n”; system(“git –no-pager stash show -p ” $1); }’ | less  它在过去帮助了我很多(清理stashes堆栈)。 - Dariusz Cieslak
具有固定引号且没有管道的相同命令,因此您仍然可以看到差异突出显示: git stash list | awk -F: '{ print "\n\n\n\n"; print $0; print "\n\n"; system("git stash show -p " $1); }' 按[Q]退出每个藏匿处。 - Gerry
git stash show -p stash@{1} 列出藏匿处中的所有文件。是否可以从存储中查看jus一个特定文件? - Varun Natraaj
git stash show -p stash@{0} --name-only 在您的第一个存储中显示文件的名称(而不是内容)。 - bergie3000