Software Woes

Rants, tips and tricks



Sunday, April 09, 2006



Subversion GUI for Linux



Some time ago, all the projects I'm involved in, switched from CVS to Subversion. After I've seen how good it is, I switched all my projects as well (even the commercial stuff I'm working on). As I use Linux as my main OS, I started the quest to find a suitable graphical SVN client for Linux. I tried these:

1. KdeSVN
2. eSVN
3. RapidSVN

They all have a single problem in common. When you add a lot of files in your working copy, you should be able to painlessly add them to repository. TortoiseSVN (Subversion client from MS Windows) does it the proper way:

a) run "svn status", and take all the files returned by it
b) show that list with checkboxes so user can pick which of those unversioned files (s)he wants to add
c) add them

Nice, simple and user-friendly. Unfortunately, none of those Linux programs have it. They all require that you pin-point each file. Sometimes I even add a file somewhere deep in directory structure, and forget about. I only catch the problem when I (or someone else) figure it is missing when working on another computer.

I tried to circumvent the problem by running the "status" command, but eSVN for example lists all files, since it envokes "svn status" with verbose flag. Who ever uses that feature I wonder?

Anyway, from all those, I prefer eSVN for its user interface. It is clean - so it's easy to spot the changes, and it doesn't flicker like RapidSVN. KDEsvn seems quite good, but it has a lot of background "syncing" with the repository (I think I've seen the option to turn it off, but didn't bother). Why do tool makers add some extra-cool-whatever-used-by-nobody features instead of adding the esential ones? It really escapes me.

Given all this, I'm still using command-line svn from terminal most of the time. Sometimes I run svn status in terminal, and then hunt for files in GUI.

To all those "Linux desktop" proponents: If you want to see quality Linux desktop - make some pressure on developers of these tools (I'm trying by posting this on my blog).

All they need to implement is 4 basic svn commands:

svn update
svn commit
svn add
svn status

And they need to do it properly. We can do checkout manually, we can do merging and other once-a-year stuff manually. But this day-to-day features must work. All the tools I tried only implemented update and commit as they should, "add" and "status" need to be connected.

20 Comments:

At 6:12 AM, Anonymous Anonymous said...

Or better yet, lets get a TortoiseSVN style GUI for Subversion on Linux!!!!!! I use Windows at work and TortoiseSVN rocks.

 
At 10:49 AM, Anonymous Anonymous said...

There is a request for this in the GNOME Nautilus VCS bug repository:
http://bugzilla.gnome.org/show_bug.cgi?id=121315
I don't know what the status is or how much of the tortoiseSVN functionality has been implemented..

 
At 10:52 AM, Anonymous Anonymous said...

For more info, google "nautilus vcs svn", e.g.
http://mail.gnome.org/archives/nautilus-list/2004-October/msg00196.html
http://mail.gnome.org/archives/nautilus-list/2004-October/msg00201.html

 
At 8:59 AM, Anonymous Anonymous said...

A little late, but did you try SmartSVN?

/johan/

 
At 6:34 PM, Anonymous Anonymous said...

It seems every tortoiseSVN user that migrates to linux will have the same shock. I spent 3 hours over the web trying to get something graphical.

Command line may be the last refuge for the hardcore, but not everything that is on the M side of the computer world must be thrown away just because some people think they are the devil.

You could add some links to the tools you mentioned. Its not that much painful to google for them, but it would help.

Somebody Port the tortoise to linux.

 
At 1:00 AM, Anonymous Anonymous said...

In RapidSVN you can select everything and use Add Recursive

 
At 4:21 AM, Anonymous Anonymous said...

I use eSvn for subversion. I never used TortoiseSVN, so I cannot compare the two. But I have used Cervisa(GUI for CVS) - I have to say that that is a better tool - it is more integrated into the environment and editors in KDE.

 
At 9:54 PM, Anonymous Anonymous said...

I use SVN with eclipse. It is so good: you can manage the repository in a very confortable way, also create a standard project so you can make and add code. Very easy and clean. Thanks to ecllipse project people!

 
At 3:28 PM, Blogger Unknown said...

I'm not sure what version of kdesvn you were using, but the version I'm running (0.7.2) has the feature you're looking for. In the menu bar click Subversion -> Working Copy -> Check for unversioned items. This presents you with all of the files under the directory you had higlighted that are not under version control. Check the files you wish to add and click ok. Maybe one of the developers read your blog.

 
At 5:28 PM, Blogger Randy White said...

I'm soon going to install latest Slackware 12.0 with latest KDE, so we'll see what does the latest KDEsvn do. :)

 
At 11:47 AM, Anonymous Anonymous said...

I'm trying by posting this on my blog

Oh, please.

 
At 4:18 PM, Blogger Randy White said...

Oh, please.

Well, you did read it, didn't you.

 
At 1:49 AM, Blogger RavanH said...

Anybody experience with QSvn?

 
At 9:37 PM, Anonymous Anonymous said...

Netbeans also offers a gui for the svn command. afaik, you can easily 'commit' your project and netbeans will list all modified files and you can enter your revision notes.
of course you can commit single files as well.

I prefer tortoiseSVN when working on windows.

 
At 5:18 PM, Blogger Imam Raza said...

I liked your rating. I was using RapidSVN previously but its not as good as eSvn as you mentioned in your blog. I came across your blog during R&D and found that you were absolutly right that esvn is the best and easy to use.
Once agains thank you for you great post

 
At 4:45 PM, Blogger corpix said...

>A little late, but did you try SmartSVN?

SmartSVN is not free...user interface very complicated =(

 
At 11:04 PM, Blogger Randy White said...

I switched almost all my projects to Git about two years ago, so SVN client is not an interesting issue anymore.

 
At 12:45 PM, Blogger Unknown said...

http://meld.sourceforge.net/

?

 
At 6:48 PM, Blogger Randy White said...

Yeah, Meld looks cool. Main drawback is that it requires Gnome libs. For diff and merge I use dirdiff which is much more portable but still works nice.

 
At 11:00 AM, Anonymous Anonymous said...

PagaVCS seems to be the best tortoise ersatz, as it integrates with nautilus file manager in the same way :)

http://code.google.com/p/pagavcs/

 

Post a Comment

<< Home