TortoiseGit,TortoiseBzr,TortoiseHg。是否足以从TortoiseSVN转换?

时间:2009-05-31 02:21:28

标签: tortoisesvn tortoisehg tortoisegit tortoisebzr

我想试用一个分布式版本控制系统。我使用几台Windows PC,几台装有Linux的电脑和一台Mac。在Windows上,我想使用Tortoise。

TortoiseSVN以外的任何龟都有什么好处吗?直到最近,对他们的打击一直是他们的速度慢而且有缺陷,但似乎有新的推动力让他们变得坚实。

我宁愿不必尝试这三种方法。最近有人做过转换并且有很好的经历吗?

6 个答案:

答案 0 :(得分:55)

我个人对TortoiseHg有过很好的经历。它还安装了hg命令行系统,因此如果需要(或者如果您更喜欢在命令行上进行版本控制),可以直接进入该系统。界面中有一些怪癖,但总的来说它非常可靠(如果使用修订图表视图,它看起来很棒)。 Mercurial的Subversion导入也很棒。

您甚至可以使用Mercurial的hg-git扩展来使用Git存储库,正如CAD bloke所提到的那样。

答案 1 :(得分:20)

我会建议TortoiseHg。如果您熟悉TortoiseSVN,您可以立即使用它。

您想在Windows上使用它吗?

截至今天,在我看来,TortoiseHg比TortoiseSVN好。并且它仍然可以非常快速地提高(我从版本0.4开始使用它,使用Mercurial 1.4.2时电流为0.9.2)。 例如,一个很好的功能:只需在IDE中进行大量重构,而不必关心重命名。然后在上下文菜单中选择“Guess renames”功能并享受乐趣。没有更多破碎的历史记录,因为您使用了自己喜欢的重命名工具而不是'svn move'。

安装非常简单:下载并安装TortoiseHg,只需重启一次。现在你也拥有了当前版本的命令行Mercurial和SVN转换工具。它只不过是这个单一的包装。

您想在Linux上使用它吗?

“sudo apt-get install mercurial”是你需要的(在基于Debian的系统上)使用命令行Mercurial,但这个版本可能不是最新的版本。我知道,有Ubuntu的PPA存储库,也可能是Debian的PPA存储库。因此,更新您的APT源列表,导入密钥,您可以安装TortoiseHg与Gnome非常好的集成。

抱歉,我不知道在Mac上安装。

无论如何,DVCS往往很有用。无论你是做单独的黑客场景还是在一个庞大的团队中工作,它往往会更有趣。另外:使用clone + push + pull,您还可以拥有集成,快速且智能的备份。

但是,还有一些不利因素需要考虑:

1)如果您在Windows和任何* nix系统之间共享工作,则只应使用ASCII字符作为文件名。 Mercurial,Bazaar或Git都不像Subversion那样进行编码转换(参见CharacterEncodingOnWindows)。任何使用UTF-8和其他操作系统的操作系统切换时,任何法语口音或德语变音符号都会破坏您的工作。

2)你不应该使用很多大型二进制文件。 Mercurial不是为此目的而设计的,我不认为,Bazaar或Git在这方面会更有趣。

答案 2 :(得分:7)

我一直在使用TortoiseGit。虽然git的性能在Windows上遭受损失,但在大多数情况下它都是完全可以接受的。在你提到的三个中,Git当然拥有最精美的“Tortoise”,在我看来。如果您习惯使用TortoiseSVN,那么向Git的过渡应该非常顺利,因为TortoiseGit基于TortoiseSVN代码库并重用了很多UI和设计原则。

答案 3 :(得分:2)

考虑到您的设置,当您只使用几台本地计算机时,似乎没有必要采用分布式版本控制。如果您已经在运行功能SVN服务器,则尤其如此。分布式版本控制往往在大型项目中更有用,因为分布式VCS倾向于重视高质量的合并而非其他所有内容。

也就是说,谷歌选择将Mercurial(Hg)作为他们对Google Code的分布式版本控制。大多数推理都与速度,灵活性和易用性有关。当然,在我看来,Hg命令集看起来比Git命令集更友好,并且它往往适用于较旧的SVN存储库。

答案 4 :(得分:1)

我真的只是想对TortoiseHG的建议添加评论,但评论已经结束,

如何在linux上添加ppa存储库(用你的版本替换oneiric):

  1. 将以下条目添加到包管理器:

    deb http://ppa.launchpad.net/tortoisehg-ppa/releases/ubuntu oneiric main 
    deb-src http://ppa.launchpad.net/tortoisehg-ppa/releases/ubuntu oneiric main 
    
  2. 将以下条目添加到包管理器:

    deb http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu oneiric main 
    deb-src http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu oneiric main
    

    重要提示:由于目前的TortoiseHg版本通常需要比Ubuntu本身提供的更新版本的Mercurial本身,您还需要添加此PPA。

  3. 要配置APT以信任此存储库的签名密钥,请运行:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 323293EE
    
  4. 如果您安装了旧版本,则需要先删除它们。

    sudo apt-get --purge remove mercurial
    sudo apt-get --purge remove tortoisehg
    
  5. 步骤

    sudo apt-get install mercurial
    sudo apt-get install tortoisehg
    

答案 5 :(得分:0)

您是否考虑转换到其他VCS?因为切换到TortoiseGit / Bzr / Hg,您将无法访问SVN存储库。我正在通过TortoiseGit与GIT合作,但它建立在TortoiseSVN之上并具有类似的性能。

如果您只是在寻找使用SVN的替代方案,您应该查看RapidSVN。它仍然很好,比Tortoise快,它也可以在Mac和Linux上运行。

希望这有帮助!

发表评论修改

你应该考虑Git。它是现代分布式VCS,非常快速和灵活,它有一个非常庞大和强大的社区。许多大项目都在使用Git,如Linux(内核)和Ruby On Rails。

有关Git的更多信息:http://git-scm.com/http://whygitisbetterthanx.com/