我如何一次删除所有Git存储?

我的意思是,输入一个命令。


当前回答

如果你只是想清除最新的藏匿处或甚至你用git stash create创建了一个stash你应该简单地使用

git stash drop

但是如果您想清除当前git存储库中的所有git存储那么你可以使用

git stash clear

警告:这些状态将被删除,可能无法恢复

其他回答

要删除超过40天的所有存储,请使用:

git reflog expire --expire-unreachable=40.days refs/stash

添加--干运行以查看哪些存储被删除。

看见https://stackoverflow.com/a/44829516/946850了解更多详细信息。

我想保留一些最近的收藏,但删除所有其他东西。

因为当你丢弃一个时,所有的存储都会重新编号,这实际上很容易做到。要删除早于存储@{19}的所有存储:

while git stash drop 'stash@{20}'; do true; done

以下命令将删除所有存储:

git stash clear

从git文档中:

清楚的删除所有隐藏的状态。重要警告:这些状态将受到修剪,可能无法恢复(…)。

如果您正在使用VSCode,1.64(2022年1月)将在其命令中包含git stash clear。

参见问题123375和提交302c41c:

“命令”:“git.stachDropAll”,

立即清除所有存储

    git stash clear

列出所有存储

    git stash list

删除特定存储

    git stash drop stash@{index}