Subversion’s svn:externals property is the mechanism that is used to automatically check out data from other repositories into your working directory. This post is to remind me how to do it as each time I need the information, I end up Googling for it.
To start, let’s assume you have a lib/ directory and want to put ZF’s library/ and incubator/library/ code within it so that the result looks like this:
myApplication/ lib/ incubator/Zend/ Zend/
This is what you do:
$ cd lib/ $ export SVN_EDITOR=vim $ svn propedit svn:externals .
(Change vim to your own choice of editor as required!)
Vim now starts up and you need the following lines:
incubator http://framework.zend.com/svn/framework/branch/release-1.0/incubator/library Zend http://framework.zend.com/svn/framework/branch/release-1.0/library/Zend
Note that release-1.0 is the current released version of Zend Framework and release-1.5 will be the next one. The ongoing development work for 1.5 is being done on release-1.5PR.
Save and exit from vim and you will see this message:
Set new value for property 'svn:externals' on '.'
That’s it! Don’t forget to commit and then you can run svn up to keep your copy of the Zend Framework up to date.