简化git例程'快速樱桃挑选到另一个分支'

时间:2015-05-07 11:49:17

标签: git

我的存储库中有两个分支:'stable'和'master'。 有时我应该修复'稳定'中的错误并将其解释为'master'分支。 为此我必须做几个步骤:切换到'master',找到一个提交&我必须切换回'稳定'以修复下一个错误。 我该如何简化这个例行程序? 是否有可能?

3 个答案:

答案 0 :(得分:1)

事实上,如果你的分支有很大的不同,那么在另一个分支上重复检查可能是无法忍受的。

您可以添加存储库的本地副本,并始终将其保留在分支上,而原始仓库始终在稳定分支上查找。

在此方案中您只需要在存储库之间切换。

答案 1 :(得分:1)

如果您可以在命令行中输入它,则可以编写脚本:

git checkout master && git cherry-pick stable && git checkout stable 

注意:git cherry-pick stable将挑选稳定分支的TIP提交。

如果您想要更通用的功能:

#An alias so we can get the current branch with `git current-branch`
git config --global alias.current-branch 'symbolic-ref --short HEAD'

git-cherry-pick-onto() {
   local original_branch=`git current-branch`

   git checkout "$1" &&\
   git cherry-pick "$original_branch" &&\
   git checkout "$original_branch"
}

然后你可以做(​​从稳定):

git-cherry-pick-onto master

,这将挑选当前分支中的最新提交到master(或您提供的任何分支作为参数)。

答案 2 :(得分:0)

你可以挑选几个提交git cherry-pick 18795aedbc 5415dfeacb ...,我建议用提交来纠正你所有的bug,并在最后挑选所有的提交。