我通常在学校项目和其他个人项目中使用 Git。对于实习,我们必须使用非常集中的内部源代码控制系统(这似乎与我一直在阅读的颠覆工作流程非常相似)。但是,由于从未使用过集中式 VCS,我真的不太了解最好的工作流程。使用集中式 VCS 将如何影响我的工作流程以及使用它的最佳实践是什么?
2 回答
这会更慢(因为所有操作都是远程的),并且您将提交的所有内容都将立即可供所有人使用(一旦更新),但您可能不会发现这么多问题。
您可能不得不放弃使用分支的想法,因此请准备好使用配置或小技巧(环境变量)。尽量不要重命名或移动文件,因为这通常成本高昂并且会破坏旧版本控制系统的历史。
不要害怕:它更慢,功能更弱,但也更简单、更容易。如果你愿意,你可以在本地使用 git,因为你只需要从提交中排除“.git”目录(如果可能的话,只在你的master
分支中提交)。
只需检查它不是一个超级旧的系统,您必须在其中集中锁定文件(获取所有权),然后才能更改它们。
只需在本地使用 git,并在大型 CM 系统启动时需要的 Big Push 合并更改。如果需要,假装它是一种有趣的 zip 文件技术;-)
大多数大公司的集中式 CM 系统(具有混合工程学科)仍然基于泰坦尼克号时代的绘图办公室实践,当时主图纸是在高岭土和亚麻布上,并用印度墨水绘制的。必须很好地保护它们免受任何损坏的可能性 - 没有图纸,没有船,因此您可能会看到所有过程。
DVCS(例如 git)是对消除这种担忧的一种回应——复制 master 现在在软件社区中是一项零成本活动,特别是因为 sha1 提供了轻松验证您是否拥有正确副本的方法。大型系统甚至需要几十年的时间才能稍微放松对权力杠杆的掌握......