仅在本地分支或本地和远程分支上为新功能创建分支?

时间:2015-11-17 14:02:55

标签: git github version-control merge

我遵循本教程:gitflow

通常,当我实现一个新功能时,我会创建一个新的分支(仅适用于本地),在完成更改后,我拉动开发分支,与我的本地分支合并并推回开发


git checkout -b new-feature

git add .
git commit -m "finish the new feature"

git pull origin develop
git checkout develop
git merge new-feature
git push

然而,我的同事创建了一个远程分支(从开发分支分支)。当他完成新功能时,他会与开发分支合并。

所以,我错了,或者他错了?或者我们俩都是正确的?

1 个答案:

答案 0 :(得分:5)

你们两个都是对的。

如果我是唯一需要处理该功能的人,我将为该功能创建一个本地分支。如果多个开发人员需要处理某个功能,那么通过git push origin -u feature_branch创建该分支并将其推送到远程是最好的方法。

将本地分支推送到遥控器的另一个好处是,您可以在另一台计算机上备份您的工作,以防您崩溃。我很少这样做,因为我在本地工作时git rebase,并且更改公共 Git历史记录是禁忌的(其他任何已经拆除并跟踪您的分支的孤儿)。