支持本机Windows的SVN的替代方案

时间:2011-06-04 14:05:15

标签: svn version-control tortoisesvn repository revision

到目前为止,我一直在我的开发机器上使用TortoiseSVN,我发现有一些缺点。我使用Total Commander作为文件管理器,我发现自己经常删除或移动工作区内的文件夹。因为我使用Total Commander调用的标准文件系统操作,而不是TortoiseSVN提供的操作,这经常会破坏工作空间,我无法提交到存储库。

是否有任何免费替代方案,它安装驱动程序/服务来监视文件系统操作,以便它可以正确记录这些操作,从而不破坏工作区?或者,是否有源控制软件完全没有这些缺点?

修改

重命名SVN / Git / Mercurial

中的处理

Handling renames: svn vs. git vs. mercurial
Renaming in Git and Mercurial: Accuracy and automaticity

Git处理完全自动重命名,Mercurial能够使用显式命令自动发现重命名,SVN根本不处理重命名。

另一个相对重要的区别是,如果由于任何原因Mercurial没有检测到文件重命名,它无论如何都会将文件存储在存储库中,从而复制内容。无论是否检测到文件重命名,Git都不会复制内容。

Mercurial的自动重命名处理

以下是两个扩展,允许为Mercurial添加类似Git的自动重命名处理:

https://bitbucket.org/jammycakes/autorename/downloads
https://bitbucket.org/cbarrett/guess-renames/downloadssource

Mercurial和Git的比较

What is the Difference Between Mercurial and Git?
Git vs. Mercurial: Please Relax
The Differences Between Mercurial and Git
Google Analysis of Git and Mercurial
Git, Hg or Bzr — Which to recommend to a new user?
SCM choice for a new user?
Git, Mercurial and Bazaar – A Comparison
Git and Mercurial - Compare and Contrast
Distributed Version Control Systems(有趣的特征比较,虽然很旧)

Mercurial入门

Hg Init: a Mercurial tutorial
Video tutorial

Git工具

除了已经提到的Git Extenesions之外,Git Source Control Provider对于Git来说是非常有用的Visual Studio扩展。 TortoiseGit是Git Extensions的替代品,但根据我的测试,Git Extensions更加用户友好,具有整洁的用户界面。在Git Extensions中使用子模块也要好得多。

2 个答案:

答案 0 :(得分:4)

您可以使用的另一个DVCS是Mercurial。

https://www.mercurial-scm.org

http://tortoisehg.bitbucket.io

答案 1 :(得分:1)

git会自动检测已移动的文件。但是,还有许多其他原因需要将git改为SVN - 首先,git是一个分布式版本控制系统,它比SVN等集中式系统带来许多好处。例如,您可以在本地提交,而无需立即将更改上传到中央存储库(这意味着您可以更频繁地提交(因此运行较小的风险),因为您不需要在100%之前运行100%的工作你提交它,并与分支机构合作是一件轻而易举的事。在缺点方面,学习曲线比许多其他源控制系统更陡峭,并且从SVN来的时候习惯git可能需要一段时间。

如果您想在Windows上试用git,我建议gitextensions