好的Linux(Ubuntu)SVN客户端[关闭]


160

Subversion在Windows上具有出色的客户端(当然是Tortoise)。我刚刚在Linux上尝试过的所有内容-都比较糟糕。


Answers:


104

免责声明:很久以前,我是RabbitVCS(以前称为NautilusSvn)的开发人员之一。

如果您使用Nautilus,则可能对RabbitVCS(Trevor Bramble先前提到)感兴趣。这是用Python编写的Nautilus的TortoiseSVN的完整副本。尽管仍有很多改进要做(尤其是在性能方面),但有些人似乎对此很满意。

这个名称非常适合该项目,因为它所引用的故事非常准确地描述了开发进度(意味着小睡片刻)。如果您确实选择开始使用RabbitVCS作为版本控制客户端,则可能不得不动手。


4
我已经尝试过,而且我已经陷入了爱河……感谢您开发它:D
加布里埃尔·所罗门

1
RabbitVCS看起来非常不错!我几乎停止使用svn来支持Mercurial了:D
Kimble,2009年

1
确实是一个非常好的客户。我昨天安装了它,我再开心不过了。
Nils Pipenbrinck 09年

哇-在Ubuntu 10.4上运行很棒-感谢您的提示。
HDave 2010年

4
将我的机器速度降低到无法使用的程度。
马修·

33

通常,我只使用svn的命令行,老实说,这是最快,最简单的方法,我建议您尝试一下。
在您消除此问题之前,您可能应该问自己是否确实需要使用GUI的任何功能,以及是否希望打开GUI应用程序并下载文件,或者只是键入“ svn co svn:// site” -goes-here.org/trunk”

您可以使用“ svn help”中提供的简单命令轻松地添加,删除,移动,提交,复制或更新文件,因此对于大多数用户而言,这已经足够了。


9
如果您想在不接触外壳的情况下在GNOME中工作,则命令行工具不是很好。
tovare

29
为什么想要不接触外壳就可以工作(或者为什么认为您的生产率可能会降低一半),这是一个谜。
卡尔·迈耶

17
当您需要有选择地提交文件时,GUI很不错,因为其他所有终端都足够好。我在CLI方面遇到的所有问题都是由于我不了解实际发生的情况
Slartibartfast

72
-1,问题不是“我应该将CLI用于SVN吗?”,而是“有人可以为Linux推荐类似TortoiseSVN的客户端吗?”。
cdmckay

7
我发现,对于合并而言,具有图形化客户端,在单击文件时具有快速的视觉差异会很有帮助!
彼得·阿杰泰

22

首先,我将尽量不要在这里发白;)

叹了口气。人们为什么不走集成了文件浏览器客户端的路呢?它比打开终端和键入更为有效。简单的数学运算,大约两次鼠标点击与大约10个以上的击键。但是,我必须指出,我喜欢命令行,因为我从事大量的管理工作,并且喜欢尽可能快和容易地自动化操作。

在Windows上被TortoiseSVN宠坏后,当我搬到ubuntu时,我对缺少像tortoisesvn这样的集成客户端感到惊讶。对于纯粹的程序员来说,一个IDE集成客户端可能就足够了,但对于一般用途而言,例如对于图形艺术家或其他随意的办公人员,则必须将该客户端集成到标准文件浏览器中,否则大多数人将永远不会使用它。 。

一些客户的想法:

kdesvn,这是到目前为止我最喜欢的客户端,尽管与TortoiseSVN相比有一个很大的烦恼-您必须输入特殊的subversion布局模式才能获得表示文件状态的叠加层。因此,我不会将kdesvn称为集成。

NautilusSVN看起来很有希望,但是从0.12版本开始,它在大型存储库中存在性能问题。我使用的存储库中的工作副本有时可以包含约50000个文件,TortoiseSVN可以处理,而NautilusSVN则不可以。因此,我希望NautilusSVN能够尽快获得新的优化版本。

RapidSVN没有集成,但是我尝试了一下。它表现得很奇怪,并且崩溃了几次。大约20分钟后,它被卸载了。

我真的希望NautilusSVN项目能尽快发布新的性能优化版本。

NaughtySVN看起来可能看起来很不错,但是到目前为止,它缺少图标覆盖并且已经有两年没有发布了……所以我要说NautilusSVN是我们唯一的希望。


13
对一个人有效的,对另一个人无效的。
rasjani

2
在某些情况下,命令行速度更快。特别是如果您已经在终端中浏览目录树。对于某些用例,在浏览器中具有svn集成非常好。特别是,我希望能够打开一个文件夹并立即以图形方式查看哪些文件已被修改,哪些文件已签入以及哪些文件未添加到存储库中。在这种情况下,您无法解释cli工具的输出,就像在浏览器中看到标志一样快。但是,假设一个最适合您的工具也最适合其他人,这是非常非常的冒昧。
dusktreader 2012年

1
VIM用户在这里。什么是文件浏览器?
thomas-peter 2012年

Simple math, ~two mouse clicks versus ~10+ key strokes 鼠标需要指向它(向UI专家询问,这是可以忽略的),使用10次击键可以实现的操作密度比鼠标单击要高得多(例如,自动完成,通配符,命令历史记录中的搜索...)。单击几次仍可以节省时间(例如,从上一个命令输出而不是UP复制并粘贴$(...)),但是它们是更多例外。无论如何,用“简单数学”进行简化是完全错误的。
Narcolessico


15

您还可以查看git-svn,它本质上是Subversion的git前端。


1
git-svn是我曾经能够高效使用的唯一svn客户端。
达斯汀

3
+1。看起来很奇怪,但是git在Subversion方面比Subversion本身更好-操作运行更快,它具有健全的grep工具,它在客户端使用的磁盘空间更少(!),并且为您提供了捕获提交错误的缓冲区。

4
我不会将其视为“ Subversion客户端”。
亚当·伯瑞克

@AdamByrtek如果它可以从svn存储库中检出并将更改提交到上游svn存储库,则它是svn客户端。我想您是在考虑将现有经验应用于svn的方式。
彼得·科德斯

git-svn结帐大型项目的速度非常慢,因此您可能会遇到问题。希望仅使最近的100转左右变浅。 --depth不支持;请参阅stackoverflow.com/questions/747075/…了解如何半手动执行此操作。(svn log用于查找当前转速,然后-r n:HEAD)。我用它来检出可以玩的Audacity源代码树,并将Debian包装中的某些补丁应用到其中。以及所有我在本地使用过的git工具。:)
Peter Cordes'3


12

恕我直言,有一个很棒的svn gui客户端SmartSVN。这是商业项目,但有基础版本(100%功能)可以免费使用,甚至用于商业目的。它是用Java编写的,所以它是多平台的(需要sun-java *软件包)http://smartsvn.com


2
如果您曾经使用过TortoiseSVN,即使您没有为此付出一分钱,也将在几天之内开始讨厌SmartSVN:它在日常工作中非常不便且不直观(除非您通过培训)。
AntonK 2012年

并且默认情况下不支持openJDK
mlvljr 2012年

我下载并正在使用它。到目前为止,太棒了!
B Faley

5

我想你可以看看RabbitVCS

RabbitVCS是一组图形工具,旨在提供对您使用的版本控制系统的简单直接访问。目前,它已集成到Nautilus文件管理器中,仅支持Subversion,但我们的目标是合并其他版本控制系统以及其他文件管理器。RabbitVCS受到TortoiseSVN等的启发。

我正要尝试一下...似乎很有希望...


+1 rabbitvcs岩石!,看来我在Ubunutu上有Tortoise SVN了:)
shahjapan


2

没有人提及它,我一直忘了这个名字,所以下次我用谷歌搜索时,会在此处添加这些说明,以备将来参考。

目前,pagavcs似乎是最好的选择

你想要这些.deb文件之一

sillyspamfilter://pagavcs.googlecode.com/svn/repo/pool/main/p/pagavcs/

(1.4.33是我现在安装的,因此,如果最新导致出现问题,请尝试安装它。)

安装然后运行

nautilus -q

关闭鹦鹉螺,然后再次打开鹦鹉螺,您应该很好,而不必注销/关闭

可悲的是,兔子对我来说只是在大型存储库上窒息而已,因此无法使用,paga不会降低浏览速度,而且似乎也没有尝试求助于目录以查看是否发生了任何变化。


1

我对kdesvn感到非常满意-与konqueror很好地集成在一起,就像与Windows浏览器中的trortousesvn一样,并支持tortoisesvn的大多数功能。

当然,如果您使用kubunto而不是ubuntu,那么您将从这种集成中受益。


1

看看SVN Work Bench,它不错但并不完美

sudo apt-get install svn-workbench

1

有时我会使用kdesvn直接针对存储库进行工作。

通过Eclipse处理项目时,我经常使用Subclipse。

但是最重​​要的是,我使用了很好的CLI。通过一些别名和bash脚本进行备份,它确实是使用svn的最简洁,最可靠的方法。

我尝试了NautilusSVN(与NaughtySVN没有关系)和svn-workbench,发现它们太成问题或缺少功能。我知道我曾在某些时候尝试过RapidSVN,但由于它很快就被卸载了,所以一定不会给我留下深刻的印象,但是我对此一无所知。


1

如果使用它,则NetBeans具有出色的版本控制管理,除了SVN之外还具有多个客户端。

但是,我建议您从命令行学习如何使用SVN。CLI是Linux的精神:)


1

如果TortoiseSVN根深蒂固,您可以尝试通过WINE使用它吗?虽然我还没有尝试过。

失败了,我发现带有Subversive的Eclipse相当不错。


2
我用WINE尝试过TortoiseSVN,但由于运气好,因为TortoiseSVN是一个外壳扩展,需要功能齐全的Windows资源管理器(WINE中不包含),因此运气不佳。
安德烈·弗朗西亚

1

如果使用eclipse,subclipse是我使用过的最好的。在我看来,它也应该独立存在...易于使用,可与您在eclipse中的代码和项目链接...对于使用eclipse并需要gui的开发人员来说,这是完美的选择。

就个人而言,我更喜欢用于Linux和Windows的命令行客户端。

编辑:如果您使用XFCE及其文件管理器(称为Thunar),则有一个效果很好的插件。如果我不想打开终端,我只用那个终端,它具有所有功能,既快速又易于使用。不过,其中还包括一个git。





By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.