[英]How can I delete all of my Git stashes at once?
有两种方法可以删除存储:
$ git stash drop <stash_id>
。$ git stash clear
库中删除所有$ git stash clear
: $ git stash clear
。谨慎使用它们,可能很难恢复曾经删除的存储。
这是参考文章。
此命令使您能够查看所有隐藏的更改。
git stash list
这是以下命令,使用它来清除所有隐藏的更改
git stash clear
现在,如果您想从存储区域中删除隐藏的更改之一
git stash drop stash@{index} // here index will be shown after getting stash list.
注意:
git stash list
使您可以从 git 的 stash 区域获取索引。
我想保留一些最近的藏匿处,但删除其他所有内容。
因为当你放下一个时,所有的藏匿处都会重新编号,这实际上很容易做到。 要删除所有早于 stash@{19} 的 stash:
while git stash drop 'stash@{20}'; do true; done
要删除超过 40 天的所有存储,请使用:
git reflog expire --expire-unreachable=40.days refs/stash
添加--dry-run
以查看删除了哪些存储。
有关解释和更多详细信息,请参阅https://stackoverflow.com/a/44829516/946850 。
如果您想删除最新的存储或任何特定索引-
git stash drop type_your_index
> git stash list
stash@{0}: abc
stash@{1}: xyz
stash@{1}: pqr
> git stash drop 0
Dropped refs/stash@{0}
> git stash list
stash@{0}: xyz
stash@{1}: pqr
如果你想一次删除所有的藏品-
> git stash clear
>
> git stash list
>
警告:一旦完成,您将无法恢复您的存储
我还有另一个要求,比如只需要删除很少的藏匿处,在这种情况下,下面的代码会有所帮助。
#!/bin/sh
for i in `seq 5 8`
do
git stash drop stash@{$i}
done
/* 将删除从 5 到 8 的索引*/
一次清除所有藏匿处
git stash clear
列出所有藏品
git stash list
删除特定的藏匿处
git stash drop stash@{index}
清除列表中的所有存储: git stash clear
从列表中清除特定索引: git stash drop index
如果您只想清除最新的存储,甚至您使用git stash create创建了一个存储,那么您应该简单地使用
git stash drop
但是如果你想清除当前 git 存储库的所有 git stashes 那么你可以使用
git stash clear
警告:这些状态将受到修剪(敲除),并且可能无法恢复
如果您正在使用 VSCode,则 1.64(2022 年 1 月)将在其命令中包含git stash clear
。
请参阅问题 123375并提交 302c41c :
"command": "git.stashDropAll",
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.