163

Subversion has a superb client on Windows (Tortoise, of course). Everything I've tried on Linux just - well - sucks in comparison....

BuZZ-dEE
  • 6,075
  • 12
  • 66
  • 96

20 Answers20

104

Disclaimer: A long long time ago I was one of the developers for RabbitVCS (previously known as NautilusSvn).

If you use Nautilus then you might be interested in RabbitVCS (mentioned earlier by Trevor Bramble). It's an unadulterated clone of TortoiseSVN for Nautilus written in Python. While there's still a lot of improvement to be made (especially in the area of performance) some people seem to be quite satisfied with it.

The name is quite fitting for the project, because the story it refers to quite accurately depicts the development pace (meaning long naps). If you do choose to start using RabbitVCS as your version control client, you're probably going to have to get your hands dirty.

Bruce van der Kooij
  • 2,192
  • 1
  • 18
  • 29
  • 4
    i have tried it and i am in love ... thanks for developing it :D – Gabriel Solomon May 12 '09 at 08:50
  • 1
    RabbitVCS looks very nice! Almost a shame that I've stopped using svn in favor of Mercurial :D – Kimble Nov 25 '09 at 09:22
  • 1
    A very nice client indeed. I Installed it yesterday and I couldn't be happier. – Nils Pipenbrinck Dec 26 '09 at 16:35
  • Wow -- runs terrific on Ubuntu 10.4 -- thanks for the tip. – Dave May 06 '10 at 01:00
  • I recently moved from KdeSVN to RabbitVCS after seeing this thread. I like its Tortoise like status emblems and Nautilus integration. But there are pretty large performance issues. Probably I'll go back to Kdesvn. – Sparky Apr 06 '11 at 05:03
  • 4
    Slows down my machine to the point of unusability. – Matthew Read Nov 30 '11 at 22:15
  • Wont work, as I am unable to use it with ssh/my mounted development server. Any solution? – matchew Dec 08 '11 at 16:59
  • @matchew: If I had to guess I'd say you're referring to a very old "issue", in fact it's so old it's in the FAQ: http://wiki.rabbitvcs.org/wiki/support/known-issues#no-support-for-mounted-locations -- If you really want SFTP support, you'll have to remove a couple of lines of code somewhere that actively prevent RabbitVCS from working on mounted file locations. – Bruce van der Kooij Dec 10 '11 at 07:07
  • Has development stopped on this product? I can't seem to find packages for Ubuntu Vivid – mjaggard Jul 29 '15 at 08:06
  • As of 2019, the free Community Edition of IntelliJ IDEA seems to be head and shoulders above any other SVN GUI for Linux/Ubuntu, as far as I can tell. Its UI can be configured for version control only (as opposed to Java development), it can handle multiple independent SVN checkout folders inside a single project, allows reviewing changes visually as a part of its commit process, allows collapsing unchanged file fragments instead of scrolling through, supports SVN repository browsing, etc. – Gary Mar 22 '19 at 21:59
32

Generally I just use the command line for svn, it's the fastest and easiest way to do it to be honest, I'd recommend you try it.
Before you dismiss this, you should probably ask yourself if there is really any feature that you need a GUI for, and whether you would prefer to open up a GUI app and download the files, or just type svn co svn://site-goes-here.org/trunk

You can easily add, remove, move, commit, copy or update files with simple commands given with svn help, so for most users it is more than enough.

BuZZ-dEE
  • 6,075
  • 12
  • 66
  • 96
HappySmileMan
  • 1,015
  • 8
  • 9
  • 9
    A command line tool isn't that great if you want to work in GNOME without touching the shell. – tovare Sep 17 '08 at 19:27
  • 29
    Why you'd want to work without touching the shell (or why you'd think you could possibly be half as productive that way), is a mystery. – Carl Meyer Sep 17 '08 at 20:44
  • 17
    GUI is nice when you need to commit files selectively, for everything else terminal is good enough. All problems I've had with CLI were due my not understanding what is really happening – Slartibartfast Sep 17 '08 at 22:50
  • 1
    Interesting. All problems I've had with GUIs were due to my not understanding what is really happening. – PolyThinker Dec 28 '08 at 05:35
  • 2
    There's plenty of things to do on Ubuntu without touching the shell, but nothing is coming to mind that could really use Subversion. – David Thornley Feb 05 '09 at 19:07
  • Don't forget the bash-completion niceness. – JosefAssad Feb 05 '09 at 19:14
  • 1
    who on earth codes on Linux(presuming that is what your are using svn for) and doesn't touches the shell!! – Sridhar Iyer Feb 05 '09 at 19:33
  • 4
    using svn both on windows and linux, selective commit, three way merge, selective revision merging, with an integrated tool and without having to look at the help are the feature I am missing with the CLI. It is much easier for me to work with tortois svn than it is to use the svn CLI – shodanex Feb 06 '09 at 16:56
  • I agree. If it only takes an hour to learn the command line interface to SVN, why not? http://showmedo.com/videotutorials/series?id=95 – gotgenes Apr 12 '09 at 17:13
  • While I do most operations from command line, I still have TortoiseSVN installed, so that icons of tracked files are shown with status overlays. To look at an icon is faster then typing `svn st` :-) – avakar Apr 12 '09 at 17:36
  • 77
    -1, the question isn't "Should I use the CLI for SVN?", it's "Can anyone recommend a TortoiseSVN-like client for Linux?". – cdmckay Jul 28 '09 at 22:43
  • Agree the CLI version of SVN is the best, and it's easily scriptable if you need to. – nolim1t Nov 25 '09 at 10:08
  • 8
    I find that for merging, a graphic client with quick visual diffs on clicking files helps a lot! – Peter Ajtai Jul 14 '12 at 00:59
  • 1
    For me, the main use for a GUI is when I'm poking around in a checkout of a large-ish project that's new to me. I often want to bounce my attention between different things (like which files are modified in my working directory, what the tree looks like, and recent commit messages.) – Peter Cordes Mar 01 '15 at 06:05
  • 1
    Also, a GUI client is great when you're poking around in a project that uses a VCS you don't use regularly, so you don't know the command-line interface. That's not the only use-case, though. I use git for most of my VCS needs. I don't usually have a GUI file browser open at all, but I use git gui and gitk regularly, because they're better at what they do than git commands piped into `less`. I do some things, like git pull, git rebase, git format-patch from the command line. But for viewing a bunch of branches while preparing a nice patch series, gitk is VERY nice. – Peter Cordes Mar 01 '15 at 06:34
  • TBH, example here is pretty discouraging. I can understand that it's a one-in-the-month checkout command, but you'd be more productive typing "svn commit" rather than that. – vintprox May 20 '20 at 13:50
22

To begin with, I will try not to sound flamish here ;)

Sigh.. Why don't people get that file explorer integrated clients is the way to go? It is so much more efficient than opening terminals and typing. Simple math, ~two mouse clicks versus ~10+ key strokes. Though, I must point out that I love command line since I do lot's of administrative work and prefer to automate things as quickly and easy as possible.

Having been spoiled by TortoiseSVN on windows I was amazed by the lack of a tortoisesvn-like integrated client when I moved to ubuntu. For pure programmers an IDE integrated client might be enough but for general purpose use and for say graphics artists or other random office people, the client has to be integrated into the standard file explorer, else most people will not use it, at all, ever.

Some thought's on some clients:

kdesvn, The client I like the best this far, though there is one huge annoyance compared to TortoiseSVN - you have to enter the special subversion layout mode to get overlays indicating file status. Thus I would not call kdesvn integrated.

NautilusSVN, looks promising but as of 0.12 release it has performance problems with big repositories. I work with repositories where working copies can contain ~50 000 files at times, which TortoiseSVN handles but NautilusSVN does not. So I hope NautilusSVN will get a new optimized release soon.

RapidSVN is not integrated, but I gave it a try. It behaved quite weird and crashed a couple of times. It got uninstalled after ~20 minutes..

I really hope the NautilusSVN project will make a new performance optimized release soon.

NaughtySVN seems like it could shape up to be quite nice, but as of now it lacks icon overlays and has not had a release for two years... so I would say NautilusSVN is our only hope.

  • 13
    What is efficient for one, is not efficient for another. – rasjani Sep 03 '10 at 07:51
  • 2
    For some use cases, the command line is faster. Particularly if you are already navigating a directory tree in the terminal. For some use cases having svn integration in your browser is very nice. In particular, I like to be able to open a folder and instantly, graphically see what files have been modified, which are checked in, and which are not added to the repo. In this case, you cannot interpret output from a cli tool as rapidly as seeing emblems in a browser. However, it's very, very, very presumptuous to assume that a tool that is best for you is also best for others. – dusktreader Apr 05 '12 at 19:47
  • 1
    VIM user here. What is a file explorer? – thomas-peter Sep 25 '12 at 07:33
  • `Simple math, ~two mouse clicks versus ~10+ key strokes` Mouse requires pointing it (ask UI experts, that's not negligible) and what you can do with the 10 keystrokes might have much higher operation density than the mouse clicks (e.g. autocompletion, wildcards, search in command history...). There are still few times when a single click saves time (e.g. copy-pasting from last command output instead of UP and placing $(...) ), but they are more exceptions. In any case simplifying with that "simple math" is plain wrong. – Narcolessico Mar 04 '19 at 11:20
16

kdesvn is probably the best you'll find.

Last I checked it may hook in with konqueror, but its been a while, I've moved on to git :)

Arnab Nandy
  • 6,472
  • 5
  • 44
  • 50
Kent Fredric
  • 56,416
  • 14
  • 107
  • 150
15

You could also look at git-svn, which is essentially a git front-end to subversion.

Glen Solsberry
  • 11,960
  • 15
  • 69
  • 94
  • 1
    git-svn is the only svn client I've ever been able to use productively. – Dustin Dec 28 '08 at 06:26
  • 3
    +1. It seems bizarre, but git is better at subversion than subversion itself - operations run faster, it has a sane grep tool, it uses less disk space on the client side(!), and it gives you a buffer to catch commit mistakes. –  Feb 05 '09 at 19:15
  • 4
    I wouldn't count it as a "Subversion client". – Adam Byrtek Jul 28 '09 at 22:42
  • @AdamByrtek If it can check out from a svn repo, and commit changes to an upstream svn repo, it's an svn client. I guess you're thinking in terms of applying existing experience with how svn works. – Peter Cordes Mar 01 '15 at 06:10
  • git-svn is VERY slow making a checkout of a big project, so you'll prob. want to make a shallow of just the last hundred revs or so. `--depth` isn't supported; see http://stackoverflow.com/questions/747075/how-to-git-svn-clone-the-last-n-revisions-from-a-subversion-repository for how to do it semi-manually. (with `svn log` to find current rev, then `-r n:HEAD`). I used this to get a checkout of the Audacity source tree that I could play around in, and apply some of the patches from the Debian packaging to. And all with the git tools that I'm used to using locally. :) – Peter Cordes Mar 02 '15 at 02:56
12

IMHO there is one great svn gui client, SmartSVN. It is commercial project, but there is foundation version (100% functional) witch can be used free of charge, even for commercial purposes. It is written in java, so it is multi-platform (it requires sun-java* package) http://smartsvn.com

  • 2
    If you have ever used TortoiseSVN, you will start to hate SmartSVN in a couple of days even if you hadn't paid a cent for it: it is extremely inconvenient and unintuitive in a daily work (unless you passed a training). – AntonK Jun 13 '12 at 13:23
  • and does not work with openJDK by default – mlvljr Oct 25 '12 at 04:55
  • I downloaded and am working with it. So far, awesome! – B Faley Nov 30 '13 at 09:51
12

See my question:

What is the best subversion client for Linux?

I also agree, GUI clients in linux suck.

I use subeclipse in Eclipse and RapidSVN in gnome.

Community
  • 1
  • 1
andyuk
  • 38,118
  • 16
  • 52
  • 52
5

I guess you could have a look at RabbitVCS

RabbitVCS is a set of graphical tools written to provide simple and straightforward access to the version control systems you use. Currently, it is integrated into the Nautilus file manager and only supports Subversion, but our goal is to incorporate other version control systems as well as other file managers. RabbitVCS is inspired by TortoiseSVN and others.

I'm just about to give it a try... seems promising...

Arnab Nandy
  • 6,472
  • 5
  • 44
  • 50
opensas
  • 60,462
  • 79
  • 252
  • 386
2

Nobody else has mentioned it and I keep forgetting the name so I'm adding these instructions here for my future self the next time I google it...

currently pagavcs seems to be the best option.

you want one of these .deb files

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

(1.4.33 is what I have installed right now so try that one if the latest causes problems)

install then run

nautilus -q

to shutdown nautilus, then open up nautilus again and you should be good to go without having to logout/shutdown

Sadly rabbit just chokes on large repos for me so is unusable, paga doesn't slow down browsing but also doesn't seem to try and recourse into directories to see if anything has changed.

Arnab Nandy
  • 6,472
  • 5
  • 44
  • 50
Kriss
  • 231
  • 1
  • 2
2

For Ubuntu you cane make use of KDESVN integrated with Nautilus to five a Tortoise SVN Feel.

Try this ClickOffline.com : Ubuntu alternatives for Tortoise SVN

1

If you use eclipse, subclipse is the best I've ever used. In my opinion, this should exist as stand-alone as well... Easy to use, linked with the code and the project you have in eclipse... Just perfect for a developer who uses eclipse and wants a gui.

Personally, I prefer the command-line client, both for linux and windows.

Edit: if you use XFCE and its file manager (called Thunar), there's a plugin which works quite well. If I don't want to open the terminal, I just use that one, it has all the functionality, is fast and easy to use. There's also one for git included, though...

Atmocreations
  • 9,923
  • 15
  • 67
  • 102
1

As a developer, I use eclipse + sub-eclipse client (Assuming that you are using svn to checkout some development project and you will compile them).

most people don't spend much time with svn operation, and command line is the fastest way to do so.

there is also some nice GUI tools :

http://rabbitvcs.org/

or

http://www.harecoded.com/nautilus-subversion-integration-tool-execute-svn-commands-with-gnome-scripts-96355

Arnab Nandy
  • 6,472
  • 5
  • 44
  • 50
chedi
  • 298
  • 3
  • 12
1

I sometimes use kdesvn for work directly against a repository.

I often use Subclipse when working on projects via Eclipse.

But most of all I use good ol' CLI. With some aliases and bash scripts to back it up, it really is the most concise, reliable method of using svn.

I have tried NautilusSVN (no relation to NaughtySVN) and svn-workbench and found them too problematic or lacking in functionality. I know I tried RapidSVN at some point but I must not have been impressed as it was quickly uninstalled, but I don't remember anything about it.

Trevor Bramble
  • 8,523
  • 4
  • 29
  • 29
1

If you use it, NetBeans has superb version control management, with several clients besides SVN.

I'd recommend however that you learn how to use SVN from the command line. CLI is the spirit of Linux :)

samoz
  • 56,849
  • 55
  • 141
  • 195
1

If TortoiseSVN is really ingrained you could try using it through WINE? Though I haven't tried it.

Failing that, I've found Eclipse with Subversive to be pretty good.

Grundlefleck
  • 124,925
  • 25
  • 94
  • 111
  • 2
    I tried TortoiseSVN with WINE but without luck due the fact that TortoiseSVN is a shell extensions that need a fully functional Windows Explorer which is not included in WINE. – Andrea Francia Jun 03 '09 at 19:12
1

I'm very happy with kdesvn - integrates very well with konqueror, much like trortousesvn with windows explorer, and supports most of the functionality of tortoisesvn.

Of course, you'll benefit from this integration, if you use kubunto, and not ubuntu.

Sunny Milenov
  • 21,990
  • 6
  • 80
  • 106
1

Take a look at SVN Work Bench, it's decent but not perfect

sudo apt-get install svn-workbench
Drejc
  • 14,196
  • 16
  • 71
  • 106
1

Nautilus provides context menu for svn activities

sudo apt-get install nautilus-script-collection-svn

cp -r /usr/share/nautilus-scripts/Subversion ~/.gnome2/nautilus-scripts/

For more info

Nautilus context menu

MGK
  • 7,050
  • 6
  • 34
  • 41
0

Anjuta has a built in SVN plugin which is integrated with the IDE.

LiraNuna
  • 64,916
  • 15
  • 117
  • 140
0

Since you're using Ubuntu, and not Kubuntu, I assume you're using GNOME. You might be interested in Nautilus Subversion Integration described on that link.

jtimberman
  • 8,228
  • 2
  • 43
  • 37