我有 2 个分支:Section9 和 s9feature。在分支 s9feature 上,我创建了 stash
,然后我在 Section9 分支上创建了 checkout
,并希望查看专门来自 s9feature 的隐藏列表。我知道我可以运行 git stash list
或 git reflog stash
,但我需要特别列出 s9feature 中的隐藏
答案 0 :(得分:4)
存储基于提交,而不是分支。然而,存储的默认“标题”——实际上只是它的提交消息,因为每个存储只是一个不在任何分支1上的提交——具有以下形式WIP on branch
。因此,您可以运行 git stash list
,然后在其输出上使用 filter 来提取包含分支名称的任何行。例如:
git stash list | grep s9feat
(请记住,grep
搜索任何子字符串,因此只要 s9feat
的长度足以区分有趣的隐藏和无用的隐藏,这就是我们在这里需要的全部内容)。
当然,如果您更改了藏匿处的标题,这将不起作用。由于分支名称对 Git 毫无意义且不相关,并且只出现在面向人类的消息部分,因此您需要更复杂的东西才能找到有趣的隐藏信息 - 除非,也就是说,您已经将这些更改后的标题中有趣的部分。
1从技术上讲,每个存储至少是两次提交。使用特定选项创建的存储添加 第三 提交以保存未跟踪的文件。