Visual Studio的易于使用的svn客户端替代方案?

7
我们的开发团队使用VS.NET进行应用程序开发,使用 TortoiseSVN/ VisualSVN 进行版本控制。似乎每天都会出现工作副本或仓库出现问题的情况,当这种情况发生时,人们只能举起双手并呼唤我。虽然 SVN 的工作正常,但显然存在人为因素,我已经厌倦了成为开发团队的 SVN 帮助台。有没有人可以推荐更好/更直观的版本控制设置?

似乎几乎每天都会出现问题,我们有一个由5人组成的团队已经使用SVN超过5年了,在这段时间里,我无法记起我们遇到过任何问题。你确定你已经正确设置了它吗? - Binary Worrier
1
事情怎么搞砸了?也许你需要检查一下你的分支策略。听起来好像用户只需要多了解一些关于系统的知识。我们在使用ClearCase时也遇到过类似的问题,但老实说,每个开发人员都应该学习使用开发软件所需的工具(包括版本控制工具)。 - Mark Synowiec
1
我的公司有90多个开发团队,每个团队由3到10名开发人员组成,多年来我们一直使用TortoiseSVN,没有任何问题。你的团队需要接受他们使用的工具的培训,而不是新工具。 - Juliet
此外,您可能需要考虑雇用一个配置管理器来处理存储库和部署 - 我曾经在一个团队中工作,开发人员自己维护他们的存储库,结果非常糟糕。他们通过将代码下载到新目录中,然后在任何地方添加该目录来创建分支 - 这意味着我们有了所有这些称为“Blahblahblah_Carls_Branch”的分支,而且由于所有文件都被添加为新文件,所以没有历史记录。这是一个可怕的系统,直到我们有了几个CM人员来管理存储库,情况才有所改善。 SVN是一个很好的工具,没有必要更换它。 - Juliet
2
我发现Agent SVN与Visual Studio非常兼容。 - mrsheen
5个回答

4

Agent SVN 对我来说很好用。它与 Visual Studio 集成得非常好。


2
有没有人能推荐一个更好/更直观的版本控制设置?"更好"?是的。更直观?这是有争议的。看看分布式版本控制软件,即Mercurial或Git。两者都有可免费使用的插件来与Visual Studio集成。如果你能花一点钱,我听说Fog Creek的Kiln非常好。

至于你在SVN方面遇到的问题,我有几个建议。第一是确保您让每个人保持在产品的同一版本上。它倾向于经常更新,因此这可能会很棘手,因为您也不想落后于当前版本太远。第二个是我们曾经在映射的网络驱动器上使用Tortoise时遇到过大问题。有一个选项可以关闭某个地方的图标覆盖缓存,这使得事情变得更加稳定。但那是在我的上一份工作中,我不记得确切的设置了。


2

SVN是版本控制系统中最简单的之一。只有在处理合并操作时,才会出现问题...这可能有些棘手。

如果不解决"人为因素",无论使用哪种版本控制系统,您都将始终是帮助台。要解决这些问题,通常需要:

  • 建立一个wiki,其中包含版本控制任务的常见“配方”。
  • 为不喜欢阅读的人包括一个更改代码的工作流程图。
  • 举办专门为用户设计的培训课程(使用wiki材料)。
  • 在帮助某人解决问题时,请确保他们执行实际修复。不要仅代替他们完成,而是与他们一起进行交流。
  • 在帮助用户时,重点指导用户查看产品文档。

引入新的版本控制系统到任何组织中都应包括我列出的项目。我知道对那些完成工作的人来说是额外的工作,但它确实可以节省您长时间的“支持”小时数。


1

我认为你已经在你的问题中提供了答案 - 通过提供适当的培训来解决“人为因素”问题。对于软件开发而言,版本控制没有比SVN更简单的了,因此从你的问题措辞来看,我的猜测是说这些人为因素只会找到其他方式来使你的生活有趣。


1

如果您的代码库出现问题(例如在标签上提交、错误的提交信息等),最简单的方法之一是采取强制措施:在服务器上设置钩子以执行策略。您可以查看官方文档

基本上,这是一种简单的方式来强制命名/格式化并避免许多人为问题(在标签上提交、搞乱外部引用等)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接