Setting Up Subversion Externals With TortoiseSVN

Just a tip I spent some time on figuring out: Found information today on how to use TortoiseSVN to manage svn:externals. I’m working on a big project where we need many different branches and parts to use the same css and images libraries throughout all subprojects.

I had to Google to get the information on how to set it up Here is how to do it with TortoiseSVN (i’m using windows XP):

  1. Right click on the project folder. Select “TortoiseSVN”>”Properties”
  2. Now add the property to the dialog. Press add and fill in the following:
    Property name: “svn:externals”
    css http://project_name/master/css
    images http://project_name/master/images
    Any number of spaces will do between folder name and url. Remember line break between each project folder that needs to be checked out here.
  3. Press OK in both dialogs. The properties are now set.
  4. On next “svn update”, the external folders will be added and continuously updated.

Originally I wanted to do this for quite some time ago, and found info on how to do it with “svn propedit”. For some strange reason, it fails (can’t open external editor from command line).

More info: SVN book section on svn:external

Technorati Tags: , , ,

15 Responses to “Setting Up Subversion Externals With TortoiseSVN”

  1. amf | ref » Setting Up Subversion Externals With TortoiseSVN Says:

    […] Link […]

  2. Kumana Says:

    Thank you. I was looking for it and you have explained it in a very simple way.

  3. Satya Says:

    Right to the point, with out un-necessary details.


  4. Steve Forbes Says:

    Hi Jesper, thanks for this tip .. I had been trying to edit some existing svn:externals and not having any luck via the svn propset or propedit commands. Using your tip and TortoiseSVN worked perfectly first time. Mange tak, Steve

  5. Peter Says:

    Thanks for the tip. Had similar setup in CVS, and this was first site I found – straight to the point and easy to follow.

  6. SVN Externals for CSE Repo using TortoiseSVN Says:

    […] though this can be done with any SVN client (including the geekey command line client). Thanks to this and this, now things are working […]

  7. Ray Says:

    Just as a side note – issues with errors using “svn propedit” is related to the SVN_EDITOR environment variable not being set. On *nix you’d use something like “export SVN_EDITOR=vim” & on Windows you create a Environment variable pointing SVN_EDITOR to notepad or whatever.

    I’d still way prefer TSVN though :)

  8. Osdalme Says:

    How can I use TortoiseSVN to manage svn:externals only for one file?, not for the complete folder.
    For example:
    External file: http://server/svn/project/trunk/scripts/functions.js
    Branch file: \MyProject\scripts\functions.js

  9. FeLiZk » Blog Archive » SVN Externals Says:

    […] Ligesom ignore, som jeg ofte bruger til at undgå at committe bin og obj mapper, så er externals en egenskab på en SVN mappe. Det er temmelig simpelt at bruge og proceduren er beskrevet fantastisk for TortoiseSVN på bloggen af Jesper Rønn-Jensen. […]

  10. Setting Up Subversion Externals With TortoiseSVN « Devmanic – Software Development Mania Says:

    […] via | Setting Up Subversion Externals With TortoiseSVN. […]

  11. Wayne Says:

    Just what I was looking for. I tried and failed to get the ^/ etc. features to work but a direct link does the trick fine. Thanks Jesper for taking the trouble to document this.

  12. Edward Cieslik Says:

    Hello Jesper.

    I think you could clarify this a little more:

    1. Right click on the project folder [in which you want to create the externals folder] etc.

    2. Now add the property to the dialog. Press add and fill in the following:
    Property name: “svn:externals”/
    [The following lines take the following form:
    nameOfFolderYouWantToCreate [space] urlOfSourceFolder]
    css http://project_name/master/css
    images http://project_name/master/images

    I found your advice difficult to understand for someone who has never done anything with externals before.


  13. Andy Says:


    How do I go about adding externals with a space in the directory name? Is this possible?

    e.g. http://myproject//myFolder/test folder



  14. Marc Says:

    Here’s a quote from the TSVN doc:

    ‘URLs must be properly escaped or they will not work, e.g. you must replace each space with %20’

    I hope it helps!

  15. Ryan Says:

    Thanks for this. I was trying to move some folders from a working folder into a new repository and then bring them back in as an external. This post made it much easier than what I was trying to do.