有没有好的替代品可以取代TortoiseSVN?

6

我正在处理大型ASP.NET网站,但当文件或文件夹被移动、重命名或删除时,TortoiseSVN经常出现问题。它会锁定仓库,无论你运行多少次cleanup,它都要求提交那些丢失的文件或重命名的文件。

没有时间手工发出所有这些命令。有人知道一个好的替代品吗?


3
可能是工作流程问题,人们在仓库上进行了SVN重命名、删除等操作吗? - AlG
很抱歉,您正在做一些错误的事情。TortoiseSVN 是 SVN 最好的 GUI 客户端之一,可能在任何平台上都是如此。我建议您查找正确的移动方式等操作,然后再执行它们。就我个人而言,我经常进行移动、重命名等操作,但我没有遇到您提到的问题。 - manojlds
我同意,你需要使用Tortoise中的重命名、删除选项,而不是在资源管理器中操作。我建议你查看这个链接列表,里面有一些有用的技巧,还有一个功能可以修复你之前在资源管理器中操作而没有使用svn的重命名/移动操作。 - dowhilefor
http://softwarerecs.stackexchange.com - desbest
2个回答

3
所有文件夹中都包含隐藏的 .svn 文件夹。当你移动它们时,可能会出现问题。如果只使用 TortoiseSVN 上下文菜单 来移动文件,就不会有这些问题。
如果您喜欢从 IDE 移动文件夹,请使用 AnkhSVN,它是一个令人惊叹的 Visual Studio 扩展,将 TortoiseSVN 类似的选项集成到解决方案资源管理器窗口中,并跟踪在 IDE 中所做的更改。
最后,如果您对 Subversion 处理移动、重命名和合并的方式不满意,您可以考虑使用 更现代的版本控制系统Git 是很棒的,但需要一些学习,而且据我所知,在 Windows 上没有很好的支持。Mercurial 可能正是您所需要的,因为它比 Git 更容易学习,并且在 Windows 上有更好的支持。
Git和Mercurial都使用项目根目录下的一个单独目录来存储它们的数据,因此移动文件和文件夹不会导致工作副本损坏。
请查看Joel Spolsky的Mercurial指南Mercurial与Subversion的区别

如果工作流程不正确/没有适当的理解就进行操作,那么在任何版本控制系统上都可能发生问题。SVN的移动、重命名处理相当不错,尽管不及Git/Hg的水平。在我看来,TSVN非常用户友好,而且出错的机会有限。Git/Hg具有陡峭的学习曲线,坦率地说,如果我做错了事情,我会搞砸Git、Hg等。在这种情况下,我不建议转向Git/Mercurial。 - manojlds
问题在于这里的一切都是匆忙完成的,通过tortoise手动移动东西需要的时间太长了,会让你减速太多。 - chobo

1

VisualSVN与Visual Studio集成,自动化文件重命名/删除、忽略列表等。


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