Page 1 of 3

TIP: Choosing an SVN Client for Eclipse

PostPosted: Fri Aug 22, 2008 9:07 am
by pbakker
When you decide to start using SVN as a repository for all your sourcecode, you will need to choose and install and SVN Client in your Eclipse environment.

An SVN Client gives you the ability to communicate with SVN Repositories, so you can store, retrieve and update your sourcecode in the SVN repository.

Two of the most used SVN Clients for Eclipse are:

Our experience is that most people end up using Subclipse, for unknown reasons. We started using Subclipse ourselves, but recently, we decided to switch over to Subversive for a couple of reasons.
    - We noticed that Subclipse has problems handling large numbers of small file. A Servoy solution in Eclipse consists of many small files, quickly exceeding 10.000 files for the average solution. When trying to share and commit a solution into SVN using Subclipse (existing solution we exported from Servoy 3.5 and imported into our local workspace through the Servoy Admin Pages), we experienced an endless running Subclipse Progress bar. When we tried to do the same using Subversive, we experienced no issues
    - Subversive has more intelligent SVN Repository browsing: Subversive recognizes the "standards by convention" structure of trunk, tags and branches in the repository, whereas to Subclipse, those are just directories like any other
    - The overall progress reporting on actions with Subversive is more accurate
    - Subversive automatically suggests to commit after sharing your solution into SVN, whereas in Subclipse this is a manual action
    - Subversive allows you to share multiple solutions (projects) in one go, whereas in Subclipse you have to share each solution individually
    - Subversive does a better job suggestion a location in the SVN Repository when sharing a solution
    - Subversive seems noticeably faster for a lot of operations

All in all we find Subversive nicer and easier to work with, but most important, we haven't experienced any problems with it.

Paul

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Fri Sep 26, 2008 8:32 pm
by pbakker
Hi all,

Apparently, Subclipse picked up on the reports about performance issues with many (small) files, see http://subclipse.tigris.org/subclipse_1.4.x/changes.html#1.4.5

Haven't tested the new release of Subclipse, because I still prefer Subversive for some of the other reasons i stated in the first post.

Paul

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Feb 24, 2009 1:21 pm
by Harry Catharell
Anybody know of a step by step to installing and configuring Subversive environment

Cheers
Harry

Server = Windows
Dev machine(s) = OS X

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Feb 24, 2009 1:49 pm
by ROCLASI
Hi Harry,

You mean the server ?

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Feb 24, 2009 2:08 pm
by Harry Catharell
Hi Robert

I think that I have the server installed and configured - on a win server on LAN

It's more the integration with developer now to get the subversion plugins installed into Servoy and then link to the SVN Server

There obviously seems to be help for Team Provider and of course not an add-on to Servoy - but Subversion/Subclipse seem to be the de factos and not TP !

So looking for a heads up on getting developer configured and in sync with SVN Server

Dev machines are running OS X - not that this should make a difference :)

Cheers
Harry

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Feb 24, 2009 2:38 pm
by ROCLASI
Hi Harry,

This is what I do

Help > Updates > Find and Install
Select 'search for new features to install'
Add the following 2 URL's via the 'New Remote Site...' button
http://download.eclipse.org/technology/ ... date-site/
http://www.polarion.org/projects/subver ... date-site/
Make sure the 2 sites are selected and press finish.

When it comes back with components you select the following from the first site:
- Subversive SVN JDT Ignore Extensions
- Subversive SVN Team Provider (Incubation)
- Subversive SVN Team Provider Localization

And the following components from the second site:
- SVNKit 1.2.0 Implementation
- Subversive SVN Connector Connectors
- Native JavaHL 1.5 Implementation

Install these and you are set to go.
After all this you can add your SVN Repository perspective where you can define your SVN connections.

Hope this helps.

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Feb 24, 2009 2:42 pm
by Harry Catharell
Cheers Robert and thanks for taking the time to list this

Lazy old me went to our old friend Google and found and install how-to on the eclipse site :oops:

However, thank you very much for the pointer to SVN perspective - did not know what to do after the plugin install :)

Cheers
Harry

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Mar 03, 2009 12:13 pm
by Harry Catharell
Hi all,

Successfully set up SVN using Subversive and an online host supporting the server and all working well

Coming up against changes being required to DB schema which need then to be replicated to other remote developer(s)

Anyone have a 'how to' on handling these table/column changes and any gotchas ?

Cheers
Harry

BUMPING this post to see if anybody has any sources to go for information - ALSO thoughts needed on how to get a new developer synced correctly with the SVN server where this dev has only the db and db server set up in Serclipse environment

Cheers
Harry

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Jun 02, 2009 2:02 pm
by mboegem
pbakker wrote:Apparently, Subclipse picked up on the reports about performance issues with many (small) files


Small update: I tried starting with SVN today with quite a big project and find that Subclipse is still struggling with large numbers of files.
The most annoying thing is that Subclibse gives poor feedback on progress and at some point you don't know if it 'hangs' or that it's still seriously running.

Subversive is much nicer and works better (at least) at this point!

Maybe someone from Servoy can update the team-provider docs at the website on this, as this still does mention 'just' subclipse and not 'subversive'
The pro's and con's should at least be part of this and the user can decide what to do...

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Thu Oct 01, 2009 5:16 pm
by Gary R. Schaecher
Has anyone used Perforce as a SCM with Servoy/Eclipse? I've heard it is much faster than subversion or subclipse.

We are finding subversion to be glacially slow at check-in and check-out of a large solution. 7 hours to check-in a solution is not reasonable....Subversion must install a rodent in the wires which manually carries each of the 26,000 files, two rooms down the hall to the server, depositing the file and then it turns around and crawls down the wire to fetch another file. This software is unusable for large solutions. Our development team is in revolt!

Gary
TMA

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Thu Oct 01, 2009 6:13 pm
by hpmxxx
Hi Gary

I don't have any experience with Perforce. We are using Fortress/Vault from SourceGear (www.sourcegear.com). It works without any problems within Eclipse and it's fast enough (1000 folders, 9000 files). Check it out, they have a 30-day evaluation version.

Cheers,
hp

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Fri Oct 02, 2009 12:31 am
by Gary R. Schaecher
We have over 100,000 files and 45,000 folders in 4.1.4, when we try to even convert with beta 4 we get dozens of errors from SVN. At the moment I assume we have rogue locks on the directories or folders it can't move. Once we get to 5.x we'll still have about 26,000 files. Almost all are in globals and resource module. Wish Servoy could have not only moved elements to a record, but columns on tables as that accounts for at least 4,000 files. Several thousand relations are still there also.

To quote a developer on the web who expressed his impression of subversion well.....

* Slow. Can you say slow? My god, Subversion is slow. How slow? Slower than a molasses glacier trapped in a stasis-producing rift in the fabric of space-time. Want to commit a file? Get ready to stare at the wall for a good 15 seconds. Heaven help you if you want to create a branch, which can take a good hour on a decent-sized repository. KDE recently switched to Subversion from CVS; I assume that their Subversion admin team consists of giggling enuchs who take turns branching KDE releases while being whipped as they are repeatedly dunked upside-down into a vat full of piranha-infested human waste with mercury pouring down their throats, with breaks in between sessions to dress their wounds with salt bandages.

Couldn't express it any better myself!

Gary
TMA

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Thu Oct 08, 2009 3:04 pm
by jcompagner
personally i dont really have any speed issues with SVN, yes it is a bit slower then CVS but it does do a lot more

What is important is that you do use the latest SVN, especially also the eclipse client, subclipse is at 1.6.5 at the moment! And then do try to use the JavaHL platform binary.

1 big file for a server with all the tables and then all the columns would be a bit messy if you ask me.
And we need the table dir anyway because of calculations.

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Thu Oct 08, 2009 3:20 pm
by Gary R. Schaecher
Thanks Johan, we'll be upgrading or SVN soon. We have switched to JavaHL connectors also. We did find that by deleting the projects (48 of them) before committing, reduced the commit time from 10-12 hours to 15 minutes. We had over 126,000 files in our workspace that were reduce to under 23,000 files. We just think SVN chocked totally on trying to deal with comparing all the changes and deleting 103,000 files on the SVN server. Just pushing the smaller quantity of files without doing any 'synching' seems to be the way to go. Then when each developer checked out, they created a new workspace and the checkout was also very very fast. The conclusion was get rid of all the old pre 5.x stuff in the way of converting to 5.x. Of course we had backups of the 4.1.4 versions prior to this way of getting there.

Guidelines as to what versions of SVN and what connectors to use on each OS would always be very helpful for everyone, since Servoy is now so tied to Eclipse. Maybe we missed those facts somewhere on Servoy's website or forum.

I hadn't thought of the calculations as far as further reduction of files, good point. Plus you have already reduced almost 80%. Servoy 5.beta 4 is much, much faster everyone is so happy with the performance improvements.

Gary

Re: TIP: Choosing an SVN Client for Eclipse

PostPosted: Tue Oct 13, 2009 10:20 am
by Andrei Costescu
Harry Catharell wrote:Anyone have a 'how to' on handling these table/column changes and any gotchas ?


Once you have SVN set-up + solutions & resources project checked in, other developers can check out and use the "Synchronize with DB server information" action under "Database servers" or server nodes to handle changes to tables/columns. You just need to have the DB servers defined, and that wizard will allow you to create/remove tables and get problem markers for column differences (compares SVN checked out .dbi files with your existing DB servers). You can then solve the problem markers using "quick fix" one by one or by selecting one quick fix for all similar problem markers.

In order to do all this you need to have startAsTeamProvider set to false in properties.