Monthly Archive for March, 2012

WANdisco’s March Roundup

This month, we followed up on the news that all employees are entitled to unlimited paid vacation, with yet another benefit for WANdisco employees: an Outstanding Employee program. Our first ever Outstanding Employee is our Technical Support Engineer, Gary Beardshaw. This has been a particularly hectic month for all of our support engineers, and in this busy time we can’t fail to be impressed by Gary’s 2AM responses to customers when he’s not even scheduled to be at work! Congratulations, Gary!

We’re happy to report that our brand new Green Captain role is going well, but you may remember that when we announced this position, we also pledged to get involved with charities based near our offices in Sheffield, UK. This month, we signed up for our first fundraiser of 2012: the Master Cutler’s Challenge.

As part of this challenge, organizations from across the region put their entrepreneurial skills to the test, using a £50 initial investment from the charity to raise as much funds as possible, over the space of a few months. We’re proud to be a part of the Master Cutler’s Challenge, and are hoping to raise plenty of money for its chosen charity of 2012: Cavendish Cancer Care. We also had a great time at the challenge launch party, which took place at Sheffield’s Cutler’s Hall, and were lucky enough to hear a very inspirational speech from Sheffield sporting legend Farrell Anthony.

Good luck to everyone else who is taking part in this year’s Master Cutler’s Challenge, and keep checking this blog for updates on our progress!

Just like last month our development team have had a busy few weeks updating our certified Apache Subversion binaries: Subversion 1.7.4 can be downloaded for free from the WANdisco website and through the uberSVN platform.

This was also an exciting month for the uberAPPS store, as we announced a very exclusive special offer, especially for uberAPPS’ growing community of users. For a 30 day period, uTest’s Express Bronze package will be available to all uberAPPS users – absolutely free! uberSVN users can purchase their free uTest Bronze Express package now, by vising the uberAPPS store from inside their installation.

As if that wasn’t enough uberAPPS-related goodness, we also added one-click purchase of consultancy and individual audits to uberAPPS this month, with brand-new Subversion Health Check and Time-Based Consultancy apps. We know that rolling out, implementing and supporting Subversion can be challenging, so these additions to the app store are here to give you a helping hand. Subversion Health Check provides a comprehensive pre-implementation or post-implementation audit of your Subversion environment, while Time-Based Consultancy implements and delivers tasks that help you get the most out of your Subversion installation. We’ve had some great feedback from these apps so far, so we’d definitely recommend visiting uberAPPS from inside your uberSVN installation, to find out more.

WANdisco Updates Components of Enterprise Subversion

Following on from the announcement of Subversion Access Control 4.1, we’re pleased to announce a major update to another of WANdisco’s Enterprise Subversion products, Subversion MultiSite. Subversion MultiSite combines WANdisco’s one-of-a-kind replication technology and intelligent load balancing software to ensure that a central Subversion server is no longer a single point of failure or performance bottleneck. Subversion MultiSite delivers optimum performance, scalability and availability, with built-in continuous hot backup, immediate failover and automatic recovery.

Subversion MultiSite 4.1 marks a major update for this Enterprise product, including completely redesigned LDAP support, and a dedicated log for all access control activity. Other key updates include:

  • Full support for HTTPv2, bringing many performance enhancements.
  • Support for pre-commit, pre-lock and pre-unlock hooks, which can be assigned on a per-repository basis and configured straight from the admin console.
  • Support added for multiple admin accounts.
  • An enhanced “Emergency Reconfiguration” procedure that allows any node to be permanently dropped from the replication group, making it far easier to recover from the loss of a node.
  • Improved LDAP and SSL integration.
  • Seamless integration with Subversion Access Control 4.1.

More information on what’s new and noteworthy in MultiSite 4.1, is available at the Release Notes.

The Complete Solution Stack from WANdisco

Subversion MultiSite 4.1 can be implemented standalone or in combination with Subversion Access Control 4.1 for distributed development teams. Subversion Access Control provides full authorization, authentication, access control and audit capabilities that go well beyond what Apache Subversion provides on its own.

Availability

Want to try our Enterprise Subversion components before you buy? Free evaluation downloads of both Subversion MultiSite and Subversion Access Control are available – just fill in the online form to request your copy.

Subversion Tip of the Week

How to Checkout a Single File

While Apache Subversion does not allow you to checkout a single file as such, if you checkout a copy of your entire repository, there is a way to export a single file from that working copy (note, this exported file will not be under version control.) Exporting a single file in this way, makes use of the ‘svn export’ command.

1) To get started, checkout a copy of your repository, decide which file you wish to export and then open the terminal window. To export a particular file from your working copy, to a particular location, use the following command:

svn export PATH1 PATH2

(PATH1 is the location of the file you wish to export, and PATH2 is the location where it will be exported to.)

In this example, the command will look like this:

2) Following a successful export, you will see an “Export complete” message.

3) You will notice an unversioned copy of the file has appeared in the specified location. In this example, this is on the desktop.

Need some extra help with your Subversion implementation? We offer professional support for Apache Subversion, featuring guaranteed response times and 24-by-7 worldwide coverage.

uberSVN 12.03 Released

We’re pleased to announce another update to uberSVN, the award-winning, free open ALM platform for Apache Subversion. uberSVN 12.03 is now available!

With the just-released uberSVN 12.03, users can proxy through another machine to connect to the Internet. This is ideal if your uberSVN server security policy does not permit direct Internet access. In addition, some missing modules have been added to the distribution of Python that comes bundled with uberSVN. We’re particularly excited about this one, as it will improve uberSVN’s handling of the Windows installation package, and the recently-announced Apache Bloodhound will certainly benefit from this.

uberSVN 12.03 also fixes a list of bugs, including:

  • A problem that prevented uberSVN from installing on Windows, when Tomcat had already been installed.
  • A bug with the user-password reset mechanism, that prevented admins from resetting users’ passwords when they did not know the current password.
  • A bug which could cause the Activity Feed to attribute posts to the wrong users.

Not yet downloaded uberSVN? It’s free to download and free to install, and comes with an integrated app store and social coding capabilities. Visit http://www.ubersvn.com/download now to download the brand new uberSVN 12.03.

More information on uberSVN 12.03 is available at the Release Notes.

uberSVN Documentation: http://docs.ubersvn.com/
Download uberSVN: http://www.ubersvn.com/download
Need professional Subversion support? http://www.ubersvn.com/support

Rich Smolenski is Product Manager at WANdisco, where he is responsible for developing our product roadmap, and delivering UI features and functional improvements for uberSVN. In his spare time, Rich plays and produces electronic music, and DJs in local bars and clubs.

Subversion Support Spring Sale

You may have heard that we’re currently offering uTest Express Bronze packages for free in cooperation with our friends at uTest. Now, we’re pleased to announce another exclusive offer especially for WANdisco customers.

We’re so confident that our professional support is the best in the industry that from now until April 13th, we will be offering the first 90 days of Subversion support for free, when you purchase any of our one year support contracts. This includes Professional Support for uberSVN, the open ALM platform for Subversion.

What makes our Subversion support unique, is that we don’t just respond to direct problems; we help and guide our customers to get the most out of their Subversion implementation. In addition to this proactive approach to software support, all our support customers get our enterprise security product, Subversion Access Control, included as part of their package.

Not convinced? Our Subversion support customers are also entitled to:

  • Guaranteed response times.
  • 24-by-7 Worldwide coverage.
  • Local support from our offices in the US, China, UK, Japan.
  • Indemnification coverage, protecting our customers from intellectual property claims that can arise from the use of open source software.

uberSVN Professional Support includes:

  • 24-by-7 Online, phone and email support.
  • Local support from our offices in the US, China, UK, Japan.
  • Guaranteed response times.
  • Automated delivery of fixes and upgrades.
  • Global coverage from the US and Europe.
  • Coverage for pure certified Subversion binaries and other components of uberSVN.

Trapped in a support contract from one of our competitors? You don’t need to wait to take advantage of this very special offer – we may be able to buy you out of your existing Subversion support contract. Simply contact your WANdisco sales representative today to discuss your options.

There are limited subscriptions available, so act now to avoid disappointment.

This offer is only applicable to the first year of a WANdisco support contract. Offer expires on April 13th, 2012.

WANdisco Announces Outstanding Employee Award

Followers of this blog may already have noticed that, on top of our quarterly Social Captain, WANdisco is now nominating a Green Captain who will be responsible for the company’s recycling policy, carpool strategy, and ensuring that WANdisco is an all-round eco-friendly place to work. Now, we’re giving members of Team WANdisco another chance to grab some of the limelight, with our Outstanding Employee program. Winners of WANdisco’s Outstanding Employee program will each receive £150 in Amazon vouchers (which we’re sure you’ll agree, is far better than an engraved paperweight!)

We’re pleased to announce that our first ever Outstanding Employee is Gary Beardshaw. Gary is one of our Technical Support Engineers, helping us offer 24-by-7 worldwide support to all of our support customers. This has been a particularly hectic few months for all of our support engineers, and in this busy time we can’t fail to be impressed by Gary’s 2AM responses to customers when he’s not even scheduled to be at work!

“It’s never easy to single out one person in a group of so many superstars, and we all appreciate every effort that goes above and beyond,” said Ian Wild, WANdisco’s Director of Engineering.

Congratulations, Gary!

How to Backup Subversion Repositories

No matter how clued up you are on Subversion, disasters do happen, so it’s important to make backups of your repository data. There are two major issues to bear in mind, when creating your backups:

1) You are making a copy of a live repository – if another developer makes a change to the repository during backup, it could result in the backup missing data, or being corrupt. This can be avoided either by restricting access to the Subversion server while the backup is being performed, or performing a hot copy.
2) Unversioned revision properties can cause problems – for example, modifications to unversioned properties will not trigger any post-commit hooks you have in place.

There are two options available to Subversion developers: an incremental backup, or a full backup.

Incremental backup

An incremental backup makes a copy of all the changes that occurred since the last backup. To perform an incremental backup, you must specify a “starting_revision” revision number:

svnadmin dump {repository} -r {starting_revision} -incremental.

This creates a dump file with information about the revisions that took place between the “starting_revision” and the latest revision. This file can then be loaded into Subversion, following any data loss.

Full Backup

A full backup of a repository is essentially a copy of the entire repository, and it can be created in several ways. You could use:

svnadmin hotcopy {repository} {destination}

This command will create a local directory containing a complete copy of the repository, including hooks, configuration files and database files, while compensating for anyone who may be writing to the directory at the same time. The –clean-logs switch can optionally be used to clear up any unused Berkeley DB logs in the original repository.

Alternatively, a full dump can be performed using the ‘hot backup’ script located in the tools/backup directory:

The hot-backup.py {repository} {destination}

Once the repository and backup locations are entered, this script backs up the repository without requiring the administrator to temporarily restrict access to the repository. The script can also be added to a program scheduler, or post-commit hooks can optionally be set to call hot-backup.py, which will automatically backup the repository whenever a new revision is created.

Some alternative solutions for creating a full backup, include:

  • svnadmin dump – creates a dump file of the content of an entire repository. This dump file can then be loaded into a new repository (using ‘svnadmin load’) as required.
  • svnsync – creates and maintains a read-only mirror of your repository, by relaying commits that occur in one repository, and committing them into another. svnsync can be used to create a duplicate of any repository to which you have read access.

The key benefit of a full backup, is the creation of a functional Subversion repository that can be used as a drop-in replacement. On the downside, if you are maintaining multiple full backups of a repository, then disk space could be an issue, which encourages infrequent backups – a potentially risky strategy if you suffer data loss just before a scheduled backup! Of course, it’s also possible to mix both solutions, to suit your particular needs; for example, some teams perform a full dump at defined intervals, and intersperse them with frequent incremental backups. There is also the option of supplementing your backups with additional solutions, such as an archive of all the commit and property change notification emails, which can be a useful resource when disaster strikes.

Subversion Tip of the Week

Using an Editor for Entering Log Messages from Command Line

When you are using Apache Subversion from the command line, whether from Windows or UNIX, it is possible to have an editor pop-up and enter the required Log Message.

There are three methods for getting the Log Message into Subversion.

1) Use the –message (-m) option and put the message string in quotes.
svn ci –m”Fixed bug # 4322”
2) Use the –file (-F) option and put the message in a file
svn ci –F logtxt.dat
3) Or, have SVN launch an editor and use it to compose your message.

Of these three, the last one is the easiest.

If you do not use any of the above options, you will receive the following message.

Setting up an editor is quite easy. There are two different options.

Use the configuration file or use an environmental variable to point to the editor.

To use the configuration file you need to modify the config file and add the line that tells Subversion to use an external editor.

### Section for configuring external helper applications.

[helpers]

### Set editor-cmd to the command used to invoke your text editor.
### This will override the environment variables that Subversion
### examines by default to find this information ($EDITOR, et al).

editor-cmd = notepad.exe

To use the environmental variable, set the EDITOR variable to your editor. In the command window, execute the following line.

set EDITOR=notepad.exe

You can use any editor that can be initiated from the command line. I have used both Notepad and TextPad.

Below, I show the screen that comes up in Notepad, then the screen filled out with my comments, then running the Log Command to see the new log message.

This is the screen that pops-up when using notepad.exe. The existing text tells you the file(s) modified and where to add the Log Message.

Here I have added in the Log Message. After this save the file, then exit the editor.

Here I ran the “LOG” command to see the new Log Message. Note: The extra lines in the editor were purged.

If you exit your editor without saving its contents, you will receive the following message.

The options are:
(a)bort – Cancel the COMMIT command.
(c)ontinue-Finish the commit with no Log Message.
(e)dit-Bring the editor back.

Mike Lester is WANdisco’s Director of Training. Mike has more than 33 years of experience in the software industry, having spent the past 26 years focusing on training and consulting for Subversion and other software configuration management systems. Mike delivers WANdisco’s free training webinars, and regularly shares his SVN know-how at the WANdisco blog. Mike is also available for Enterprise Training.

Subversion Tip of the Week

Structuring Your Repository

Implementing a logical project layout in Apache Subversion right from the beginning, can save you from administrative hell later. Here are some general rules worth bearing in mind when creating a new Subversion repository, to ensure all that freedom doesn’t lead to complications.

  • The code in the trunk should be stable – all experimental development should be confined to separate branches.
  • Consider continuous integration and automated regression testing – these can help ensure there is no regression in the all-important trunk. uberSVN users can download the popular Jenkins open source CI server for free from inside their installation.
    • Make snapshots of your project – tags should be used to make snapshots of your project at certain points during the development process (e.g. tagging a snapshot as ‘Release 1.0.’) It is also good practice to make snapshots of your project before implementing major new features. This makes it easier to roll back and effectively ‘undo’ the new feature, if required.
    • Take care when making structural changes – structural changes should always be performed on the trunk, when there are no branches waiting to be merged. This can help development teams avoid serious and time-consuming conflicts.

    Mike Lester is WANdisco’s Director of Training. Mike has more than 33 years of experience in the software industry, having spent the past 26 years focusing on training and consulting for Subversion and other software configuration management systems. Mike delivers WANdisco’s free training webinars, and regularly shares his SVN know-how at the WANdisco blog. Mike is also available for Enterprise Training.

Subversion Training and Consultancy – Now Available through uberAPPS

We’re pleased to announce even more great content for uberSVN’s integrated uberAPPS store. This time, we’re helping the Apache Subversion community get even more out of their implementation, by offering one-click purchase of consultancy and individual audits, from inside their uberSVN installation.

We know that rolling out, implementing and supporting Subversion can be challenging if you don’t have much experience of managing Subversion environments. WANdisco’s Health Check provides a comprehensive pre-implementation or post-implementation audit of your Subversion environment. A named Subversion specialist will work closely with you and your team for up to one full day, helping to develop deployment and growth strategies that are tailored to your particular needs. Every Health Check will be different, but some of the common concerns our specialists address, include:

  • Is my internal network configuration setup correctly?
  • What development process workflow is right for me?
  • What tools/plugins are best for solving my tasks?

While our Health Check app identifies areas that may need improving, our Time-Based Consultancy service implements and delivers tasks that help you get the most out of your Subversion installation. We’ll endeavor to answer all of your questions and guide you through the implementation phase – in some cases, we may even be able to write your code for you!

Again, every package will be tailored to your specific requirements, but some of the issues we commonly help out with, include:

  • Hook script development
  • Performance issues
  • Scalability
  • Backup and recovery
  • Security
  • ……and more!

WANdisco are committed to making it easy and convenient to get the Subversion training you need. For this reason, we’ve made our latest app, Time-Based Consultancy, available as either a standalone, or a bolt-on to an existing professional support contract.

Both of these apps can be purchased from inside your uberSVN installation now. Not yet downloaded uberSVN? Check out some of the feedback we’ve been getting from users, about this award-winning, open ALM platform for Subversion. uberSVN is free to download and free to use – just visit http://www.ubersvn.com/ now to download your copy!