我想看看是否有更好的工作流程。假设,我只是在一个功能分支中工作,当我发现主代码中存在缺陷时,已经在那里进行了一些提交。让我们假设,在我想修复的地方有一点小错误。那我就得把它弄干净:
# I am now in feature branch
git stash # save current work
git checkout master
git checkout -b fix # ok, making a fixbranch could be passed
# fix the flaw
git commit
git checkout master
git rebase/merge fix # whatever you prefer
git checkout feature
git stash apply
git rebase master
# now the flaw is fixed in my feature branch and in master and I can go on working
那真的是很多步骤。或者,我当然可以修复功能分支中的缺陷,但在合并分支之前,它将在主节点中保持未修复状态。当我甚至不知道的时候,如果我要合并分支,它可以保持不固定。