Reputation: 87
I am using Tortoise SVN.
There is a very large repository with a very big folder tree in my office institution. My computer only has about 64GB free space (SSD), while the repo is about 100GB. The problem is, that repository has many folders (called Concepts) that include many very large tif files (kept for safekeeping - programmers only use compressed versions of those pictures).
It is illogical to update my working copy using Update to revision context command, and deselect all of the "Concepts" folders in the source tree every time I need to update my working copy.
Example folder structure:
\folder
\child
\Concepts
\child1
\Concepts
\child2
\Concepts
\child3
\Concepts
\folder1
\childOther
\grandchild
\Concepts
\grandchild1
\Concepts
\grandchild2
\Concepts
I cannot just exclude all the tif files, because they are being used in other folders.
So my final question is: How to exclude all the folders with specific name from the tree, when updating my working copy from Tortoise SVN repository?
Upvotes: 1
Views: 1731
Reputation: 23747
This feature does not exist. The command line versions of svn checkout
and svn update
do not have a "filter" option, so it stands to reason that TortoiseSVN would not offer you this ability either.
What you're really asking for is a sparse checkout, one where you have none of the "Concepts" folders in your working copy and SVN knows to never pull them down from the repository. To create one, you have two options:
If you haven't checked out your working copy yet, then you can use the built-in support for this in TortoiseSVN's "Checkout" dialog (from the above link):
To easily select only the items you want for the checkout and force the resulting working copy to keep only those items, click the Choose items... button. This opens a new dialog where you can check all items you want in your working copy and uncheck all the items you don't want. The resulting working copy is then known as a sparse checkout. An update of such a working copy will not fetch the missing files and folders but only update what you already have in your working copy.
In other words, select all directories except your "Concepts" directory and execute the checkout. Then, when you need to update later on, those directories will not be pulled down.
If you have already checked out the code, you can turn your working copy into a sparse checkout by using TortoiseSVN's "Update to Revision" dialog. Right-click on the "Concepts" folder you do not want in your working copy, select Update to Revision, and select an Update Depth of "Exclude." That will remove it from your working copy and further updates will not pull it down again.
If, sometime later, you ever do want one of the "Concepts" folders, you can make it part of your working copy. The easiest way to do so is right-click the parent directory of the folder you want to pull down, click Repo-browswer, and then right-click on the "Concepts" folder and select Update item to revision. In that dialog, select an Update Depth of "Working copy" and click "OK".
Upvotes: 4