Posts in Category: SVN

[How to] Create SVN managed project with 3rd part library on SVN

SVN has a smart fonctionality : Externals. The objective is import files from an other SVN repository
Instead of download all of them and keep it in a folder (only one for all your project using this lib or a duplicate inside each projects), make only a link to the repository.
For example, my project use Papervision 3D. I need juste add “svn:externals” property to my root folder of classes.

On Window with Turtoise SVN : Right click on folder and select “TurtoiseSNV” > “Properties …”
Turtoise SVN folder menu
Click on “Add” button, select “svn:externals” for property name and set property value to :

org/papervision3d http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/
org/ascollada http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/ascollada/
nochump http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/nochump/

Turtoise SVN folder properties window
Now commit and update your local copy.

Now indicated folders/files are synconized when you update your local copy with external(s) SVN(s)

For use a specific revision, use -r indicator. For example work with revision 727 of Papervision 3D, use property value :

org/papervision3d -r727 http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/
org/ascollada -r727 http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/ascollada/
nochump -r727 http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/nochump/

You can also use SVN tags.

Resources: