合并和删除分支 step/command

Merge and delete branch in one step/command

是否有可能 merge 一个分支并通过一个命令自动 delete 它?仅当合并成功时才应执行删除步骤。

不,git不支持同时

但是,您可以 运行 有条件地 shell 中的命令:

git merge source-branch && git branch -d source-branch

编辑:

-d只会删除合并的分支,而-D也会删除未合并的分支,所以-d会确保分支被合并,你不会误删除分支.

我会写脚本

git branch | grep -v master | xargs git merge &&
git branch | grep -v master | xargs git branch -d

这里的分支名master可以换成你现在的分支名

别忘了&&。如果第一行失败则不执行第二行。

这是一个老问题,但对于那些在寻找此功能时偶然发现它的人,您现在可以添加一个 Git 别名来完成此任务。例如,在 .gitconfig:

# ...

[alias]
  mgd = "!git mg  && git br -d ; #"

然后,您可以运行 git mgd branch-name一次性合并和删除一个分支。请注意,小写 -d 标志可确保只有在完全合并后才会删除该分支;因此,您不必担心第一个命令无法正常工作然后丢失分支。

别名开头的感叹号表示这是一个bash命令,</code>存储用户传入的参数(即分支名称merge/delete).</p> <p><strong>注意</strong>:不要忘记别名末尾的注释字符(<code>#)!没有它就不行。