在Gitlab上上传项目的最佳方法是什么? 假设您是10个正在从事项目的开发人员。 主要人物是git上的“ Maintainer”,其他人是开发者 他们应该有自己的分支机构吗?还是都应该在分支上工作? 他们应该如何纠正冲突?
答案 0 :(得分:1)
敏捷环境中的建议架构为Trunk Based Development。那就是所有贡献者经常提交并合并到一个分支。
答案 1 :(得分:1)
恐怕您的问题是“基于观点的”问题。但是这是我的10美分:
为您的团队提供几种“最佳”方法:
Feature-Based分支,其中每个功能都位于其自己的分支上,并且一旦完成开发工作(无论是来自1个开发人员还是N个开发人员),该分支便会以master重新为基础,解决冲突(如果有) ,集成测试,最后合并和删除。我认为这是最好的。
基于开发人员的分支,其中每个开发人员都有自己的版本库,他们在该版本库上开发自己的工作。开发人员完成工作后,他们将以主分支(例如master)为基础,进行集成测试并最终合并回去。集成测试必须快速进行,否则,如果主服务器有新更新,则它们必须重新设置基准以保持同步。
基于中继,所有开发人员都在一个分支(主分支或其他分支)上工作。每当开发人员完成本地开发时,他们都必须隐藏,拉动,应用隐藏,解决冲突(如果有)并最终推送。我认为这是有问题的,因为一个开发人员的工作可能破坏主存储库,从而破坏所有开发人员。此外,这是有问题的,因为一旦分支有新更改,初学者就无法拉或推,这意味着它很杂乱,并且必须接受正确的方法进行培训。考虑到某个开发人员可能有意或错误地“强制”推送,并覆盖分支的历史记录,这意味着同步/启动所有其他开发人员。