分支中的错误修复

时间:2014-01-18 07:12:46

标签: git

我是一个唯一的开发人员,拥有一个主要的开发分支,以及一个或多个功能分支。

我现在想知道,如果我在功能分支中积极开发并且发现主分支中的错误,那么最佳做法是什么。我会假设:

  1. 我切换回主dev分支,修复bug,提交。
  2. 切换到功能分支,并将主分支合并到功能分支。
  3. 继续开发功能分支。
  4. 以上似乎非常麻烦,一直在功能分支中失去我目前的位置并打破了我的思路。有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

假设您从主分支部署到生产,并且一旦完成该功能分支合并回主服务器,我会:

提交在功能分支上完成的任何工作,无论它是否构建

git commit -a -m'saving work to fix bug'

签出主分支并修复错误并提交

git checkout master
code some
git commit -a -m'fixed nasty production bug'

然后签出功能分支,重新定义更改并继续工作

git checkout feature
git rebase
git reset --soft HEAD^

最后一个命令会将HEAD一个提交移回,但保留工作副本中的所有代码,从而可以恢复功能分支上的工作。请注意,根据在主服务器上修复的内容,您可能会在重新定位时遇到冲突。