创建一个git别名来删除所有本地合并的分支

时间:2016-08-01 16:06:30

标签: git

我有一个命令来删除已合并到develop中的分支的本地副本:

git for-each-ref --format='%(refname:short)' refs/heads/ | grep -v develop | xargs -L1 -I '{}' sh -c "git merge-base --is-ancestor {} develop && git branch -d {}"

我想为我的.gitconfig添加一个别名,但我无法让一个人工作 - 我想我搞乱了逃跑。如何使这个命令工作,或者一个完成同样事情的命令?

1 个答案:

答案 0 :(得分:1)

关于如何为复合命令或脚本创建别名,应该这样做:

[alias]
  branch-clear = !git for-each-ref ... | ...

或通过功能:

[alias]
  branch-clear = "!f() { git for-each-ref ... | ...; }; f"