SVN End of Life July 1 2018

What exactly is ending

TIG will shut down the server svn.csail.mit.edu on July 1, 2018. This will end all https access to repositories. It will also break ssh access for those using svn.csail.mit.edu as the host in their repository URL

Why

Subversion (svn) is a relatively old version control system largely replaced in practice by git; as such relatively few lab members are currently using this service. Continued support would require significant reworking of the back-end application. On July 1, certificates for the authentication system this currently relies on will expire and will no longer be renewable. Because of reduced demand, this service will not be ported forward to the new web authentication system, OpenID Connect.

Alternatives

MIT IST git hosting

MIT IST operates a GitHub Enterprise instance. Note that this service allows you to have private repositories only if the user community is limited to MIT affiliates.

Public git hosting services

Both of these services allow for both public and private repositories, but charge maintenance fees if you need multiple private repositories or more advanced authorization and authentication options.

Continued self supported svn at CSAIL

IF all the people you collaborate with have CSAIL accounts you can continue to use your existing repositories via ssh rather than http.

How To

Migrate Subversion repository to git

The most recommended solutions involve using git rather than Subversion. Thankfully, it is possible to import a Subversion repository into git using the git-svn command. If you need help transitioning from Subversion to git please send mail to help@csail.mit.edu and we will do everything we can to help you have a smooth transition; the sooner we know the smoother your transition is likely to be.

Change svn repository URL

If you do decided to stay with Subversion you will probably need to change the repository URL your local working copy refers to. First, determine what URL you are currently using by changing directory into the top level of your existing working copy and running this command:

$ svn info --show-item url
svn+ssh://svn.csail.mit.edu/afs/csail.mit.edu/group/tig/REPOS/my_code_repo

In this case, there is an svn+ssh path using the host svn.csail.mit.edu and the filesystem path /afs/csail.mit.edu/group/tig/REPOS/my_code_repo. If you have an https URL you will need to go to svn.csail.mit.edu and look up the matching "Repository path" for your URL to use in the next step.

Next, you need to construct a new URL pointing to svn+ssh://login.csail.mit.edu plus the filesystem path for your repository. This will point to the exact same location on disk as the other URL, except using a different host (and maybe different protocol) to get there. So the above case becomes svn+ssh://login.csail.mit.edu/afs/csail.mit.edu/group/tig/REPOS/my_code_repo.

$ svn relocate svn+ssh://login.csail.mit.edu/afs/csail.mit.edu/group/tig/REPOS/my_code_repository

You can verify the change by running the first command again which should show the new URL that was just set:
$ svn info --show-item url
svn+ssh://login.csail.mit.edu/afs/csail.mit.edu/group/tig/REPOS/my_code_repo

-- JonProulx - 09 Apr 2018
Topic revision: 09 Apr 2018, GarrettWollman
 

MIT Computer Science and Artificial Intelligence Laboratory

 

  • About CSAIL
  • Research
  • News + Events
  • Resources
  • People

This site is powered by Foswiki MIT: Massachusetts Institute of Technology