Add your comment

This blog isn't allowing comments at this time.

Previous Comments

Subversion (SVN)

On Mon 10th June 2013, 21:20 Jonathansays:

Subversion (SVN) is a version control system for files, typically used where multiple people are working on the same files. SVN is used by many open source projects and companies worldwide to solve the problem of keeping many copies of a project in sync.

After creating an SVN repository (or "repo") using "svnadmin" it's necessary to "check out" a local working copy to make your changes, adding files and directories as required. Once files are placed in your working copy directory they're not automatically under version control so you have to add them to SVN.

In the event 2 people (or more) change the same file, which you only find out when you commit your changes, SVN will try to resolve the conflict by merging the 2 copies. In the event that's not possible human interaction is required to either merge files or discard one of them.

A feature that's got me out of a scrape more than once is "revert", immediately removing any local changes to a file and going back to before you started. Sometimes this is necessary when those late night coding sessions go wrong so for maximum effect I recommend committing often (otherwise it's very easy to lose a lot of work).

If you need a version control system, not just for source code, SVN may be the solution for you.