SVN checkout ignore folder
Can I ignore a folder on svn checkout? I need to ignore DOCs folder on checkout at my build server.
edit: Ignore externals isn't an option. I have some externals that I need.
Solution 1:
You can't directly ignore folders on a checkout, but you can use sparse checkouts in svn 1.5. For example:
$ svn co http://subversion/project/trunk my_checkout --depth immediates
This will check files and directories from your project trunk into 'my_checkout', but not recurse into those directories. Eg:
$ cd my_checkout && ls
bar/ baz foo xyzzy/
Then to get the contents of 'bar' down:
$ cd bar && svn update --set-depth infinity
Solution 2:
Yes you can using SVN 1.6. You will need to do a checkout first then mark the folder for exclusion then delete the unwanted folder.
svn checkout http://www.example.com/project
cd project
svn update --set-depth=exclude docs
rm -fr docs
From now on any updates to the working copy won't repopulate the docs folder.
See http://blogs.collab.net/subversion/2009/03/sparse-directories-now-with-exclusion/ and http://subversion.apache.org/docs/release-notes/1.6.html#sparse-directory-exclusion for more details.
Tom
Solution 3:
With versions prior to 1.5 I have found that if you checkout only the top most folder and then selectively update, from then on updates only effect what you have checked out. Ie.
svn co -N foo
cd foo
svn up -N bar
svn up
The -N flag makes the operation non-recursive. The above will not check out anything else at the foo level, eg. say there is a folder lala
, the final svn up will not check out that folder, but it will update bar
.
But at a later time you can svn up lala
and thus, add it to the checkout.
Presumably this also works with 1.5.