26

我想尝试一个分布式修订控制系统。我使用几台 Windows PC、几台带 Linux 的 PC 和一台 Mac。在 Windows 上,我想使用 Tortoise。

除了 TortoiseSVN 之外的任何 Tortoise 有什么好处吗?直到最近,对它们的打击一直是它们速度慢且有缺陷,但似乎有一种新的推动力来让它们变得稳固。

我宁愿不必尝试所有三个。有人最近转行并有很好的经验吗?

4

6 回答 6

55

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

您甚至可以使用 Mercurial 的 hg-git 扩展来处理 Git 存储库,正如 CAD 专家所提到的。

于 2009-05-31T04:12:03.430 回答
21

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

你想在 Windows 上使用它吗?

截至今天,在我看来,TortoiseHg 比 TortoiseSVN 更好。而且它仍然改进得非常快(我从 0.4 版开始使用它,当前是 0.9.2 和 Mercurial 1.4.2)。例如,一个不错的功能:只需在 IDE 中进行大量重构,而不关心重命名。然后在上下文菜单中选择“猜测重命名”功能并玩得开心。没有更多的历史记录,因为您使用了您最喜欢的重命名工具而不是“svn move”。

安装非常简单:下载并安装 TortoiseHg,然后重启一次。现在您也拥有了当前版本的命令行 Mercurial 和 SVN 转换工具。无非就是这个单一的包裹。

你想在 Linux 上使用它吗?

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

对不起,但我不知道如何在 Mac 上安装。

无论如何,DVCS 往往很有用。它往往更有趣,无论你是在做一个单独的黑客场景还是在一个庞大的团队中工作。另外:通过克隆+推+拉,您还可以获得集成、快速和智能的备份。

但是,也有一些缺点需要考虑:

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

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

于 2010-01-17T22:55:22.220 回答
7

我使用 TortoiseGit 已经有一段时间了。虽然 git 在 Windows 上的性能确实会受到影响,但在大多数情况下它是完全可以接受的。在你提到的三个中,在我看来,Git 无疑拥有最精致的“乌龟”。如果您习惯使用 TortoiseSVN,那么过渡到 Git 应该会非常顺利,因为 TortoiseGit 基于 TortoiseSVN 代码库并重用了它的许多 UI 和设计原则。

于 2009-05-31T03:38:37.027 回答
2

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

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

于 2009-05-31T03:31:08.123 回答
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
    
于 2012-01-12T10:27:44.557 回答
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/

于 2009-05-31T03:05:31.827 回答