如何批量删除 stashes?

How to delete stashes as a batch?

如何一次性删除我的一些 Git 收藏?我在 sourceTree 中尝试过,但似乎我一次只能删除一个存储。我可以同时删除其中的几个吗?在 git bash 中是否有执行此操作的命令?我不想删除所有这些。

应该这样做:

echo -e 'stash@{6}\nstash@{3}\nstash' | xargs -rl git stash drop

但是请确保 "count down",因为命令是一个接一个地执行的,如果您在每个命令之后使用我的示例中的数字引用,则索引会发生变化,因此请从最旧的开始。或者当然使用您在保存时提供的名称。

使用 Bash Brace Expansion,我们可以快速创建一长串存储,例如 stash@{8} stash@{7} stash@{6} stash@{5} stash@{3} stash@{1}

可以用echo stash@\{{8..5}\} stash@\{{3,1}\}

制作

xargsfor 循环放在一起,我们得到:

echo stash@\{{8..5}\} stash@\{{3,1}\} | xargs -rn1 git stash drop

注意:列表一定要倒过来