My workplace is switching from CVS to Subversion for source-code version control so I need to pick up Subversion rather quickly. It took me awhile to get comfortable developing with CVS and now I need to learn stuff all over again. I even have scripts setup to help with the deployment of my project using CVS -- now they need to be modified to work with Subversion. Oh well, I'm sure its for the best.
SmartSVN - a cross-platform solution that will work on Windows, Mac and Linux. Pysvn - another cross-platform client, free of course. SCPlugin - Mac-only, integrates into Finder. SCPlugin was inspired by TortoiseSVN, so if you're a fan of that one then maybe give it a go!
- Context menu in file-open/save dialogs on x64 OS. On x64 versions of Windows 7 and 8, the TortoiseSVN context menu and overlays won't show for 32-bit applications in their file-open/save dialogs until you install the 2017 C-runtime for x86. (select the vcredist.x86.exe file for download). Note: this only applies to 32-bit applications on x64 OS.
- Note: The article that was originally at this URL was written in 2007, and I haven’t updated it recently because I no longer use Subversion. If svn doesn’t come pre-installed on Mac OS X, my best guess in August, 2016 is that the best way to install Subversion is with Homebrew, or MacPorts.
- Familiar Concepts. Continue to work with concepts you're already familiar with from other version control systems.
I've been reading the awesome, and free, Subversion book a lot lately and it has really helped with my understanding of how Subversion works. Since Subversion is not installed on OS X by default, we need to install it before using it from the command line. I downloaded the easy-to-install Subversion .dmg distributed by Martin Ott.
After running the .pkg-installer I was able to run svn help
from the command line to confirm it was installed properly. If that command doesn't work after installing, you may need to add this line to the .profile file (in your home directory):
export PATH=$PATH:/usr/local/bin
Now you should be able to run all the SVN commands from your Mac OS X command line. If you prefer a GUI interface to SVN, check out svnX. I do all my development from within Eclipse, so I'm using an SVN plugin for Eclipse called Subversive. I prefer it over the more commonly known Subeclipse plugin because Subversive has a friendlier, and seemingly more configurable, interface.
Checking out a project from the command line over SSH is really simple, however while searching Google I was unable to find this 'simple' answer. If I had found the free Subversion book before searching for this answer, I probably wouldn't be writing this:
svn checkout svn+ssh://svn.dev82.org/projects/myproject
That's it! The syntax for checking out a project is very similar to CVS, however SVN has the concept of 'URLs' to specify the location and type of connection to your repository. If you have SSH Client Keys setup, you can run SVN commands over SSH without the password prompt (which is necessary for the deployment scripts I use).
Find packages for your operating system:
Centos Linux | Debian Linux | Fedora Linux | FreeBSD | HP-UX | NetBSD | OpenBSD | openSUSE | Mac OS X | Red Hat Linux | Solaris | SUSE Linux | Ubuntu Linux | Windows
The Apache Subversion project does not officially endorse or maintain any binary packages of the Subversion software. However, volunteers have created binary packages for different distributions and platforms, and as a convenience, we maintain a list of links to them here. If there are any problems with or questions about the different binary packages please send email to the Subversion users mailing list.
Note that binary packages usually come out about a week after the corresponding source release. Please don't post to the mailing lists asking when a binary package for a given platform will be ready. The packagers already know when new source releases come out, and work as fast as they can to make binaries available.
Binaries are typically built from the latest stable release.
Note also that this list does not include distributions of larger collections of software of which Subversion is but one piece. Several vendors offer such things, but we concern ourselves primarily with Subversion itself. As such, the listing here is limited to those packages which may be reasonably considered binary distributions of Apache Subversion alone. If you are looking for more widely scoped, Subversion-related value-add offerings, we trust that ${YOUR_FAVORITE_SEARCH_ENGINE}
can facilitate that for you.
Centos Linux ¶
CentOS project (client and server)
CollabNet (supported and certified by CollabNet; requires registration)
WANdisco (supported and certified by WANdisco; requires registration)
Debian Linux ¶
Debian Project (maintained by Debian Project; client and server; svnserve is part of the subversion package, mod_dav_svn is in the separate libapache2-mod-svn package (formerly libapache2-svn))
WANdisco (supported and certified by WANdisco; requires registration)
Fedora Linux ¶
Download Subversion For Mac
FreeBSD ¶
HP-UX ¶
HP Porting Centre (maintained by Connect Internet Solutions Ltd.)
NetBSD ¶
OpenBSD ¶
OpenBSD Project (client and server; svnserve is part of the subversion package, mod_dav_svn is in the separate ap2-subversion package)
openSUSE ¶
Part of the the standard distribution. svnserve is part of the subversion package, mod_dav_svn is in the separate subversion-server package.
Community packages are available from the openSUSE project, also for the 1.8 series of releases.
Subversion For Mac Free
Mac OS X ¶
An old version of Subversion is shipped with MacOS X. See the open source section of Apple's web site for more information.
Fink (requires Fink; maintained by Christian Schaffner)
MacPorts (requires MacPorts)
WANdisco (client and server; supported and certified by WANdisco; requires registration)
Red Hat Linux ¶
Red Hat (client and server)
CollabNet (supported and certified by CollabNet; requires registration)
WANdisco (supported and certified by WANdisco; requires registration)
Solaris ¶
WANdisco (supported and certified by WANdisco; requires registration)
SUSE Linux ¶
On SUSE Linux Enterprise: Enable the SDK. svnserve is part of the subversion package, mod_dav_svn is in the separate subversion-server package.
Community packages are available from the openSUSE project, also for the 1.8 series of releases.
WANdisco (supported and certified by WANdisco; requires registration)
Ubuntu Linux ¶
Ubuntu Packages (maintained by Ubuntu Project; client and server; svnserve is part of the subversion package, mod_dav_svn is in the separate libapache2-svn package)
WANdisco (supported and certified by WANdisco; requires registration)
Subversion For Mac
Windows ¶
CollabNet (supported and certified by CollabNet; requires registration)
SlikSVN (32- and 64-bit client MSI; maintained by Bert Huijben, SharpSvn project)
TortoiseSVN (optionally installs 32- and 64-bit command line tools and svnserve; supported and maintained by the TortoiseSVN project)
VisualSVN (32- and 64-bit client and server; supported and maintained by VisualSVN)
WANdisco (32- and 64-bit client and server; supported and certified by WANdisco; requires registration)