有没有更快的方法来集成功能分支?

时间:2011-09-21 08:30:13

标签: git version-control

我经常发现自己在做的事情是,“重新启动一个功能分支,合并并删除它。”要做到这一点,我运行:

git rebase master feature
git checkout master
git merge feature
git branch -d feature

对于我认为是一种常见的工作流程而言,这似乎相当费力。有谁知道更快的方式?

(显然我可以写一个剧本,但我想知道是否有一个我错过的内置方法。)

4 个答案:

答案 0 :(得分:1)

一般方法仍然是编写脚本或定义别名,如“Streamline your git workflow with aliases”中所示,但您可能需要“git alias with positional parameters”中的参数:

rebmrg = "!f() { git rebase master $1; git checkout master ; git merge $1 ; git branch -d $1 }; f"

答案 1 :(得分:0)

如果你已经在掌握,那么将它合并并删除它会更快(git merge featuregit branch -d feature)。

这只是两个命令,你可以避免重新检查一个旧的主人只是为了快进它。

您还可以执行单个解析而不是可能的多个解析,因为您可能需要重新设置功能分支的多个提交。

此外,您的历史记录更好地反映了功能分支实际开发的内容。 rebase摧毁了这段历史。

答案 2 :(得分:0)

您可以保存一个命令(在rebase之后合并将解析为快进):

git rebase master feature
git checkout -B master
git branch -d feature

但更好地使用其他人建议的别名或根本不使用别名,只需合并

答案 3 :(得分:0)

您的合并分支似乎与rebase分支完全相同,因此您可以将其重命名为master(-M标志强制它作为master已经存在)

git rebase master feature
git branch -M feature master