SVN Migration

From user's Wiki!
Revision as of 08:57, 14 June 2012 by Msteghofer (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Migration

During the night between Monday, 18th June and Tuesday, 19th June the whole SVN repository content (Toolkit, Gimias, Suites, etc.) will be moved from a local UPF server (https://svncistib.upf.edu/repos/toolkit) to an Amazon Cloud server (https://svn.gimias.org/svn/toolkit). From that moment on the old server will still be reachable, but with read-only access. So before changing the server URL of your local checkouts you won't be able to commit changes to the repository nor will you get any updates from your colleagues.

So you will have to do an operation that is called "relocate". This will tell your SVN client the new URL of the SVN server that corresponds to your local checkout. So for future operations it will know, where to get updates from and where to commit your changes to.

If you have a reasonably recent version of your SVN client (see first step) then this won't take more than 10 minutes per checkout and you won't have to worry about local changes. They don't affect the relocate and can be committed after the relocation process.

Step by Step Instructions

While the actual relocation of your checkout (Step 3) has to be done on Tuesday 19th June or later, you can do some preparations before (if and when you have time) to make sure the transition next week goes as smoothly as possible and your work doesn't get interrupted. Especially if you haven't updated your repository for some time and have local changes, then during the update in Step 2 there can be conflicts that may take you a while to resolve.

The steps presented here have to be done for every checkout you have on your machine (e.g. once for Gimias-1.3.0, once for Toolkit-Trunk, once for Cardio-Suite etc.).

Step 1: Upgrade your SVN client

Note: This step can be done before Tuesday.

Make sure that you have a reasonably recent version of your SVN client. Below you can find a table of minimum versions for the relocation to work properly:

Client Recommended Version Working Version How to check version
SVN Command-Line client >= 1.6.12 >= 1.5.0 svn --version
SmartSVN >= 7.0.2 >= 7.0.2 "Help" -> "About SmartSVN"
TortoiseSVN >= 1.7.7 >= 1.6.3 Right-click in the explorer -> TortoiseSVN -> About

If you have a version that matches the "Working" requirement, but not the "Recommended" requirement, the relocate will still work, but it may take much longer. For versions even older than the "Recommended" requirement the relocate might still work (no guarantee!), but it might take even longer and local changes might get lost.

Step 2: Update

Note: This step can be done before Tuesday.

Do an update to make sure you have a checked out revision greater than r18722 (any revision after 7th June 2012 15:28:42).

Note for TortoiseSVN users: When checking, if you have to do an update to get a revision greater than r18722, be aware of the fact that the revision log just shows you the revisions where there were actual changes in your directory. So don't be surprised, if after doing the update your revision log still shows only revisions older than r18722. Unfortunately TortoiseSVN doesn't seem to have a better way to find out the currently checked out revision number.

If in doubt: Just do the update, it doesn't hurt!

Step 3: Relocate

Note: Don't do this before Tuesday 19th June 2012 9 AM (CEST = GMT+2) or your checkout will be broken (you may have to delete it and check it all out again)!

SVN Command-Line client

  • Execute the following commands:
cd /path/to/my/local/checkout
svn switch --relocate https://svncistib.upf.edu/repos/toolkit https://svn.gimias.org/svn/toolkit .
  • If you are asked, if you want to accept the server's certificate, press P for "Accept (P)ermanently"
  • If you are asked for username and password, enter them. Note that the credentials are the same as for the old server.

SmartSVN

  • Choose "Modify" -> "Relocate..." from the menu
    Smartsvn-relocate1.png
  • In the Relocate-window:
    Smartsvn-relocate2.png
  • If you are asked, if you want to accept the server's certificate, click "Accept permanently".
  • If you are asked for username and password, enter them and click OK. Note that the credentials are the same as for the old server.

TortoiseSVN

  • Right-click on your checkout directory and from the context menu select "TortoiseSVN" -> "Relocate...".
    TortoiseSVN-relocate1.png
  • In the Relocate-window:
    TortoiseSVN-relocate2b.png
  • If you are asked, if you want to accept the server's certificate, click "Accept permanently":
    TortoiseSVN-certificate.png
  • If you are asked for username and password, enter them and click OK. Note that the credentials are the same as for the old server.

Step 4: Update

Do an update (like in Step 2).