Boston Linux & Unix (BLU) Home | Calendar | Mail Lists | List Archives | Desktop SIG | Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings
Linux Cafe | Meeting Notes | Blog | Linux Links | Bling | About BLU

BLU Discuss list archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Any subversion experts out there?



David Kramer wrote:
>> I just read up on svn:externals. I think that will do the trick. Thanks!
> 
> Seconded.  Bringing shared components into a project is one of the most
> popular uses for svn:external.
> 
> Let me give you a piece of advice we learned the hard way in my company:
> Do not have the external point to the trunk of the shared component.  Make
> a release/X.Y directory, and point it at that directory.  As you release
> new versions of the shared component, you can test each app with the new
> version, and change the svn external to point to the newer version.
> 
> If you don't do it this way, when you update the shared component for one
> application, all the others will be forced to work with the new version. 
> If there's an API change, you're sunk.  But if you create releases of the
> shared component and link to them from the applications, the work for one
> application can't break another.

The other option (that is recommended in the documentation and is essentially
equivalent in results) is to use explicit revision numbers in your externals
references.  This is very useful when your 'external' reference is actually
some repository that you don't have administrative control over (and thus
can't make branches/tags).

For example, I have a project where I need a particular version of ACE, and my
externals reference looks like:

# r78243 is the 5.5.8 version
DOC/ACE_wrappers -r 78243 svn://svn.dre.vanderbilt.edu/DOC/Middleware/trunk/ACE


HTH,
Matt

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.







BLU is a member of BostonUserGroups
BLU is a member of BostonUserGroups
We also thank MIT for the use of their facilities.

Valid HTML 4.01! Valid CSS!



Boston Linux & Unix / webmaster@blu.org