我很想知道人们在企业环境中使用分布式版本控制的经验。
具体来说:
- 被收养难吗?
- 既然已经到位了,是不是很受欢迎呢?
- 您使用的是什么“模型”(集线器和辐条?还有什么?)
- 允许您使用集线器和辐条,推送到中央服务器是否有任何纪律问题?
- 我想知道是否有人在这种环境中工作的非程序员,最好是艺术家等,VCS 对他们来说可能有点令人生畏。对他们有用吗?
我很想知道人们在企业环境中使用分布式版本控制的经验。
具体来说:
1 - 不,因为我们只是告诉人们他们必须使用它。如果您无法控制您的 VCS 和您的员工,那么您将面临更大的问题......
2 - 好吧,从 SVN 到 Git,我想说大约一半的开发人员抱怨增加的复杂性。另一半对增加的力量表示赞赏。
3 - 按照惯例,我们指定一台服务器作为中央存储库。
4 - 无 - 我的意思是如果人们没有推送到正确的服务器,那么他们的工作就不会被认为是完整的,因此无法集成、QAed 等。如果他们不能遵循此类事情的指导方针......同样如上面的#1。
5 - 这是个好问题。我们鼓励我们的非技术人员尽可能使用 GUI 工具,这似乎让他们的事情变得更简单。几乎所有开发人员都使用命令行,除非他们正在查看分支历史记录或其他视觉原因。
您是否将带有 Multisite 的 IBM Rational (Atria) ClearCase 视为 DVCS?
我们已经使用它 15 年了,其中包括 IBM 收购我们之前的 7 年。它使我们能够在美国和美国以外的地点相当有效地工作。
在大多数情况下,它运作良好,主要是通过保持不碍事。
不确定适用哪种型号。
我们没有很多非程序员使用它 - ID(信息开发 - 意思是 Tech Pubs)团队是使用它的主要非程序员群体。
CC-MS 仍然有一个有点集中的模型 - 分支在特定站点“掌握”,并且该分支上的更改只能在同一站点的视图中进行。这只是意味着您必须小心分支和合并 - 但合并非常好(分支也是如此)。
目前,在与一些同事讨论之后,我正在考虑在工作中采用 git 的想法。他们无法想象使用 DCVS 是个好主意。主要是因为他们认为合并问题太大了。我在家中将 git 用于自己的小项目,以下是我在工作中使用它的方式和原因:
顺便说一句,这似乎(在 Linus 在 Google 上关于 git 的演讲之后)是在工作中使用 DCVS 的一种常见方式:)