如果有A和B两个人同时在开发,通常一个feature或者bugfix会建一个新分支再合并进develop分支,那如果A和B直接在develop上(pull下代码再push,有冲突再解决)不也可以开发吗,如果考虑回滚,在develop上不也可以reset或者revert吗?
感觉同一个分支反而更简单,忽然不知道建新的feature或bugfix分支到底有什么好处?
如果有A和B两个人同时在开发,通常一个feature或者bugfix会建一个新分支再合并进develop分支,那如果A和B直接在develop上(pull下代码再push,有冲突再解决)不也可以开发吗,如果考虑回滚,在develop上不也可以reset或者revert吗?
感觉同一个分支反而更简单,忽然不知道建新的feature或bugfix分支到底有什么好处?
假如A组与B组有不同的功能,那么不同的任务组在不同的分支上开发,互相之间不会影响。再比如说,需要向项目中添加一个新功能,一般的团队都不会直接在主分支上修改,都会新建一个分支,在上面更改代码。这样做的好处就是保证develop线代码的完整性和可用性,也就是说,可以保证develop上代码的稳定性,相互不会影响。
10 回答11.1k 阅读
15 回答8.4k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
8 回答6.2k 阅读
2 回答2.6k 阅读✓ 已解决
如果你在开发新功能的时候,急需修改一个 bug 怎么办?那你要把你新功能不稳定的代码也部署了?显然不可能。所以要有 feature 分支来保证新功能开发的差不多的时候才能进入主分支的代码。那你的 bug 可以随时修改。
那么,如果你有两个 bug 是先后发现的,但是一个 bug 改好了需要上线,另一个还在改,怎么办?你把改到一般的 bug 部署上线么?显然不可能。所以你需要一个 bugfix 分支,来确保 bug 改好了代码才能回到主分支。
最后,你在开发一个新功能,到一半。突然,产品经理跟你说,我这有个新功能,明天上线!!怎么办?你要把产品暴打一顿辞职还是明天上线新功能?那你第一个一半的新功能代码怎么办?扔了?还是半成品部署上线?所以你需要多个 feature 分支来开发不同的新功能。
怎么样,主分支健壮了吧?随时随地可以部署了吧?