views:

153

answers:

4

I have a directory that came off of the part of the trunk that i checked out that is not relevant to my interests. How do I use Tortoise SVN to remove this folder from my system and stop SVN from trying to give me updates with out removing it from the repository?

A: 

As far as I'm aware, it's not possible to selectively ignore entries when checking out. When you check out an SVN URL you get everything below it.

So if your project has the following structure:

\trunk\Dir1
\trunk\Dir2
\trunk\Dir3

You can either get all of \trunk, or individually check out each Dir1, Dir2 or Dir3 to their own working directories. Trying to check out trunk but excluding Dir2 for example is not supported.

Josh W.
A: 

if you check out the trunk, you get everything. If its your repo, organize it according to projects / interests. What's the point of backing it all up and versioning it, if you can't figure out what it is in a year?

ryansstack
+4  A: 

I have not used it myself yet, but take a look at Sparse Directories:

http://svnbook.red-bean.com/en/1.5/svn.advanced.sparsedirs.html

Subversion 1.5 introduces a feature called sparse directories (or shallow checkouts) that allows you to easily check out a working copy—or a portion of a working copy—more shallowly than full recursion, with the freedom to bring in previously ignored files and subdirectories at a later time.

...

You might at this point be wondering, “So what? When would I use this?” One scenario where this feature finds utility is tied to a particular repository layout, specifically where you have many related or codependent projects or software modules living as siblings in a single repository location (trunk/project1, trunk/project2, trunk/project3, etc.). In such scenarios, it might be the case that you personally care about only a handful of those projects—maybe some primary project and a few other modules on which it depends. You can check out individual working copies of all of these things, but those working copies are disjoint and, as a result, it can be cumbersome to perform operations across several or all of them at the same time. The alternative is to use the sparse directories feature, building out a single working copy that contains only the modules you care about. You'd start with an empty-depth checkout of the common parent directory of the projects, and then update with infinite depth only the items you wish to have, like we demonstrated in the previous example. Think of it like an opt-in system for working copy citizens.

crashmstr
A: 

You have a few options here:

  1. Just delete the folder and never update the root, only the subdirs near the deleted folder.

  2. Set svn:ignore property on the root dir to ignore unneeded folder, and never commit the root dir.

  3. You can setup tortoiseSvn to checkout specific levels under your root dir. If your problem is with huge files in the uunneeded dir, then you can checkout root only with children (one level) and then use switch command on all directories besides the unneeded one to checkout all the levels under them, to save space with the unneeded dir. You will still see an empty unneeded dir.

Vitaly Polonetsky