[ACCEPTED]-What is a working copy and what does "switching" do for me in Tortoise SVN?-svn-switch

Accepted answer
Score: 45

A working copy is the copy you have checked 16 out to your working area. It doesn't matter 15 if it is a branch or from the trunk. It's 14 what you are working on.

You can switch between 13 branches (or more correctly copies) of the 12 same parent with svn switch. This will basically 11 say, what's different between the current 10 working copy and the branch I am switch 9 to. It then performs an update on your current 8 working copy to the revision of branch you 7 switch to.

So working copy is your checkout, however 6 it was obtained.

Switching is just changing 5 the branch your working copy commits to. Think 4 of it like changing the pointer in the repository 3 where your commits will go. With the aid 2 of acquiring any differences from the branch 1 to your work area.

Score: 31

It's generally unnecessary to have the whole 27 repository checked out. Branches and tags 26 in subversion are intended to be cheap - ie, they 25 don't create copies of identical files, just 24 reference them. When you've got the whole 23 repository checked out, when anyone branches 22 or tags for any reason, it's suddenly multiplying 21 the space used on your local hard drive.

You 20 can have as many parts of the repository 19 checked out as you need to. So you could 18 have a folder called 'trunk' which is a 17 working copy of just the trunk, another 16 'version2' which would be a working copy 15 of your branch. This way, any additional 14 tags which are created don't get checked 13 out.

Or you can have one checkout called 12 'project', and if it's originally pointing 11 to trunk, you can switch it to one of the 10 branches or tags - it's a way of re-using 9 the original checkout so that you don't 8 have to get everything all over again.

It 7 can be quite useful to do this you're working 6 on trunk and suddenly realise you need to 5 commit your changes to a branch - perhaps 4 because they got too experimental. To do 3 this, branch from your working copy, switch 2 to the new branch then commit and your changes 1 will go to the branch rather than trunk.

Score: 6

Working copy is your copy of the code, that 6 you have checked out. Normally, you'd check 5 out just /Project/trunk/, not the whole 4 structure of the repository. Switching is 3 changing your working copy's root. The way 2 you work with SVN is not how it should be 1 done.

Score: 3

Your working copy is any folder on your 10 hard drive that you've used to check out 9 a project from subbversion. You can "switch" to 8 a different project for that working copy, so 7 that the versioned contents will resemble 6 the contents of that other project.

This 5 is useful to switch from trunk to branch, without 4 having to check out a new copy. It can for 3 example save you some build time, since 2 the unversioned files (your compiled objects, libraries, executables) are 1 not removed or changed.


Score: 2

You have checked out the whole project tree 5 - this is probably not what you want. For 4 the trunk work, check out a copy rooted 3 at 'trunk', not from the project root. Similarly, for 2 branch work check out only the branch you 1 want.

More Related questions