如何批量删除藏匿处?

时间:2016-07-29 23:23:11

标签: windows git atlassian-sourcetree git-stash

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

2 个答案:

答案 0 :(得分:3)

借助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

注意:必须撤消列表。

答案 1 :(得分:1)

这应该做:

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

但要确保"倒数"因为命令是一个接一个地执行的,并且如果你在每个命令之后使用数字引用,就像在我的例子中一样,indizes会移动,所以从最旧的开始。或者当然使用您在保存时提供的名称。