多个开发人员应该在同一个分支中工作,还是更新 - 修改 - 提交?或者每个开发人员应该独自拥有自己的每个分支?共享分支如何影响您正在进行日常维护而不是未维护的代码流的环境?此外,如果您在每个开发人员完成后立即部署并通过测试(快速,而不是将所有工作放入单个版本中),这将如何工作.
总的来说,我发现让开发人员(正在处理同一个项目的人)使用相同的分支更好地更快地找到集成问题.如果开发人员都使用单独的分支,那么您只是推迟可能的集成问题,直到稍后合并分支时.
当然,让开发人员在同一个分支上工作意味着您需要在这些开发人员之间进行实际通信,但这是一个社会问题,而不是技术问题.
当有充分理由首先存在该分支时(例如,软件的先前版本的补丁版本或特定客户的特殊版本),开发人员将在不同的分支上工作.
请注意,Git和Mercurial等工具允许开发人员轻松创建自己的私有分支来组织自己的工作.这与不止一个开发人员共享分支的情况不同,应鼓励(通常是短暂的)私有分支.