
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
156
|
Chapter 7: Advanced Topics
The support that exists for externals definitions in Subversion today can be a little
misleading, though. The working copies created via the externals definition support
are still disconnected from the primary working copy (on whose versioned directo-
ries the
svn:externals property was actually set). And Subversion still only truly
operates on non-disjoint working copies. For example, if you want to commit
changes that you’ve made in one or more of those external working copies, you must
run
svn commit explicitly on those working copies—committing on the primary
working copy will not recurse into any external ones.
Also, since the definitions themselves use absolute URLs, moving or copying a direc-
tory to which they are attached will not affect what gets checked out as an external
(though the relative local target subdirectory will, of course, move with renamed
directory). This can be confusing—even frustrating—in certain situtations. For exam-
ple, if you use externals definitions on a directory in your /trunk development line that
point to other areas of that same line, and then you use
svn copy to branch that line to
some new location /branches/my-branch, the externals definitions on items in your
new branch will still refer to versioned resources in ...