Subversive SVN Team Provider Connector Discovery
Subversive's Connector Discovery feature makes the process of finding and installing SVN Connectors much faster and easier than it was in versions before 0.7.8.I20090808-1900, when the installation process went like this:
- Install Subversive from 2 different update sites: one for SVN Team Provider and another for SVN Connectors
- There were many combinations for installing Subversive and SVN Connectors, and some of these combinations were not compatible
The Connector Discovery feature greatly simplifies the things. Now you can install only Subversive SVN Team Provider. The next time Eclipse starts, on the first call to any Subversive functionality the Connector Discovery feature will detect that there are no connectors installed and will launch a dialog which displays the SVN Connectors you need and enables download and installation:
What are the differences between SVN Connectors and which one to choose?
JavaHL is a native client implementation (so it needs a binaries to work (dll on Windows, so on Unix and so on). It is developed by tigris with Subversion itself as a Java binding for subversion.
- There is always a new version of this client with the new version of Subversion
- To work with SSH protocol you need to create a tunnel manually.
- There is no interface to configure proxy server settings.
- It's almost impossible to get JavaHL 1.5.x and 1.6.x clients to work together, because the Java class loader cannot use binaries with the same names in two plugins.
- Due to use of native binaries, any crash in the library crashes Eclipse also.
SVNKit is a pure Java implementation of the client (reverse engineered one), so it can be run on any OS with JRE installed.
- You do not need to find the binaries for your OS to get it to work
- There is an interface for configuring proxy server settings
- Work with SSH is encapsulated inside the client
- It will never crash your Eclipse IDE instance
- It's new versions are always released some time after Subversion release.
- Sometimes it inherits bugs from the native code while adopting it.
- The first versions (BETAs and RCs) are sometimes very unstable.
Hopefully this information will help you choose which connector you prefer to use.