Joh*_*ohn 3 version-control merge sourcegear-vault visual-studio
我已经使用了几年的源代码控制(如果算上Source Safe年份),但我绝不是专家.我们目前使用的是较旧版本的Sourcegear Vault.我们的团队目前使用结账和锁定模式.我宁愿切换到更新和合并模型,但需要说服其他开发人员.
开发人员(不是我)设置为检查和锁定的原因是由于叛逆文件.我们公司与一家咨询公司合作,完成我们的大部分开发工作.几年前,在我离开这里之前很久,他们已经设置了源代码控制以进行更新和合并.顾问去办理登机手续,但遇到合并错误.然后,他们选择以断开连接的方式工作数月.当最后时间测试项目时,出现了错误,并且发现代码库有很大不同.几周的工作最终不得不重做.所以他们去检查并锁定解决方案.
我不喜欢签出和锁定,因为这使得2个或更多人同时在同一个项目中工作变得非常困难.每当您添加任何类型的新文件或更改文件名时,源代码管理都会检出.csproj文件.这可以防止任何其他开发人员添加/重命名文件.
我认为只使.csproj文件可以合并,但Sourcegear网站说这是一个坏主意,因为csproj是IDE自动生成的,你不能保证两个不同的VS生成的文件将产生相同的代码.
我的朋友(另一位开发人员)告诉我,解决方案是立即检查您的项目.对我来说,问题在于我可能有一个不会构建的本地副本,它可能需要一些时间来构建.我可能需要几个小时才能使构建工作,这意味着在此期间,没有其他人能够创建和重命名文件.
我反驳说正确的解决方案是切换到可靠的模型.我对"叛徒档案"问题的回答是,这是一个程序员纪律差的问题,你不应该使用较弱的程序员选择来解决不良的纪律; 相反,你应该采取行动来解决缺乏程序员纪律的问题.
那么谁是对的?办理登机手续 - 查看叛徒档案问题的合理答案?或者这个.csproj问题对于多个开发人员来说太麻烦了吗?或者是Sourcegear是错的,应该可以将csproj文件设置为更新和合并吗?
与更新和问题合并,你们遇到了植根于一个缺乏沟通你的组和咨询组,并缺乏沟通与咨询组到组以之间的问题是什么,不一定是一个问题使用版本控制方法本身.理想情况下,需要首先解决通信问题.
我认为您对两种版本控制方法之间差异的技术分析是合理的,我同意更新/合并更好.但我认为真正的问题在于与群组中的人员进行沟通,以及在使用版本控制时这种情况如何变得明显,以及群组中的人员是否都在使用版本控制流程?选择了.请注意,正如我所说的那样,我自己的小组正在努力完成同样的事情,只有Agile/SCRUM而不是VC.这很痛苦,令人讨厌,令人沮丧,但诀窍(我认为)是确定根本问题并修复它.
我认为这里的解决方案是确保(无论选择何种VC方法)都能很好地传达给每个人,这是一个复杂的部分 - 你不仅要让你的团队加入特定的VC技术,还需要咨询团队.如果咨询团队中的某个人不确定如何执行合并操作,那么,请尝试对其进行培训.关键是要保持沟通畅通,以便在出现问题时解决问题.
| 归档时间: |
|
| 查看次数: |
812 次 |
| 最近记录: |