Git 带有路径规范的隐藏列表
Git stash list with pathspec
The documentation 对于 git stash list
说
The command takes options applicable to the git log
command to control what is shown and how. See git-log
[1].
如果我 运行 一个普通的 git stash list
,它会显示 stash@{N}
的列表,其中有很多 "WIP on branch1," "WIP on branch2," 等等。
但如果我尝试 git stash list -- doc
寻找特别影响文档的藏匿处,它会 这个...
HEAD@{33}: checkout: moving from master to abcdef123
HEAD@{46}: checkout: moving from branch1 to master
HEAD@{67}: pull: Fast-forward
HEAD@{68}: checkout: moving from branch1 to master
HEAD@{71}: pull: Fast-forward
HEAD@{74}: rebase finished: returning to refs/heads/branch2
HEAD@{75}: rebase: WIP
HEAD@{76}: rebase: WIP
HEAD@{77}: rebase: Docs: New feature explanation (This is a commit message)
HEAD@{78}: rebase: checkout branch3
HEAD@{79}: checkout: moving from branch1 to branch3
HEAD@{81}: rebase: updating HEAD
...
那是什么!?我如何查看过滤到特定路径规范的隐藏?
git stash
命令 是 一个 shell script,这使得它对于 Git 源代码来说异常可读。它似乎不再是一个,自从上面的 link 到 Git 版本 2.21.0.
以来,该错误可能会得到或修复
list_stash
代码位于 lines 402-405,主要由 运行ning:
组成
git log --format="%gd: %gs" -g --first-parent -m "$@" $ref_stash --
其中 $ref_stash
默认为 refs/stash
。请注意 $ref_stash
在 "$@"
之后 。它应该更漂亮:因为你提供了 --
,它应该把你的前 --
参数放在 --
之前,然后你的 post---
参数(和放下你的 --
),因此 运行:
git log --format="%gd: %gs" -g --first-parent -m refs/stash -- doc
哪个会做你想做的。相反,它结束了 运行ning:
git log --format="%gd: %gs" -g --first-parent -m -- doc -- refs/stash --
这意味着 git log
查看 HEAD
reflog 而不是 refs/stash
reflog。
The documentation 对于 git stash list
说
The command takes options applicable to the
git log
command to control what is shown and how. Seegit-log
[1].
如果我 运行 一个普通的 git stash list
,它会显示 stash@{N}
的列表,其中有很多 "WIP on branch1," "WIP on branch2," 等等。
但如果我尝试 git stash list -- doc
寻找特别影响文档的藏匿处,它会 这个...
HEAD@{33}: checkout: moving from master to abcdef123
HEAD@{46}: checkout: moving from branch1 to master
HEAD@{67}: pull: Fast-forward
HEAD@{68}: checkout: moving from branch1 to master
HEAD@{71}: pull: Fast-forward
HEAD@{74}: rebase finished: returning to refs/heads/branch2
HEAD@{75}: rebase: WIP
HEAD@{76}: rebase: WIP
HEAD@{77}: rebase: Docs: New feature explanation (This is a commit message)
HEAD@{78}: rebase: checkout branch3
HEAD@{79}: checkout: moving from branch1 to branch3
HEAD@{81}: rebase: updating HEAD
...
那是什么!?我如何查看过滤到特定路径规范的隐藏?
git stash
命令 是 一个 shell script,这使得它对于 Git 源代码来说异常可读。它似乎不再是一个,自从上面的 link 到 Git 版本 2.21.0.
list_stash
代码位于 lines 402-405,主要由 运行ning:
git log --format="%gd: %gs" -g --first-parent -m "$@" $ref_stash --
其中 $ref_stash
默认为 refs/stash
。请注意 $ref_stash
在 "$@"
之后 。它应该更漂亮:因为你提供了 --
,它应该把你的前 --
参数放在 --
之前,然后你的 post---
参数(和放下你的 --
),因此 运行:
git log --format="%gd: %gs" -g --first-parent -m refs/stash -- doc
哪个会做你想做的。相反,它结束了 运行ning:
git log --format="%gd: %gs" -g --first-parent -m -- doc -- refs/stash --
这意味着 git log
查看 HEAD
reflog 而不是 refs/stash
reflog。