在一个步骤/命令中合并和删除分支

Ben*_*dEg 30 git merge branching-and-merging git-branch

有可能,对merge一个分支并自动delete使用一个命令吗?只有在合并成功时才应执行删除步骤.

Zby*_*000 44

不,git不会同时支持这个.

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

git merge source-branch && git branch -d source-branch
Run Code Online (Sandbox Code Playgroud)

编辑:

-d只会删除合并的分支,同时-D也会删除未合并的分支,因此-d将确保合并分支,并且不会意外删除分支.

  • `git push origin --delete source-branch` 也可以在原点上删除。 (4认同)

Jac*_*ard 7

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

# ...

[alias]
  mgd = "!git mg $1 && git br -d $1; #"
Run Code Online (Sandbox Code Playgroud)

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

别名开头的感叹号表示这是一个 bash 命令,并$1存储用户传入的参数(即要合并/删除的分支的名称)。

注意:不要忘记#别名末尾的注释字符 ( )!没有它就行不通。