I am a newbie in the world of SVN 'administration' and process documentation for setting up the SVN repository for the first time. I have used SVN for quite a while now; not as an administrator though. This is what I have done so far for setting up the SVN repository for a project.

  1. Created three nodes /branch /trunk /tag under the head node.
  2. Gave required permissions to the developers/programmers and asked them to add and commit the files in /branch.
  3. Asked the QA team to checkout the files in a test server and certify the setup is working as per specs.
  4. After QA certified, I saw the latest revision number of /branch is at 80.
  5. I exported a copy of the /branch in a folder called /trunk in my local system.
  6. SVN added all the files in /trunk
  7. Committed all the files and folders from /my_trunk to /trunk (svn commit -m "initial import" ../my_trunk/*)
  8. The revision of /trunk files and folders now stands at 81 and all the commit message as "Initial import".
  9. Made /project_1.0, a sub-node inside /tag and copied all the files inside /project_1.0 from /trunk. Are the steps correct? Please correct me if I am wrong.

Apology for my long post.


So far this seems correct. But normally you develop in trunk and not in branches. Branches are for testing and developing out of site from the main develop line in trunk, but you can do it as you wish. This is just a convention. As I reread your post you do so far.

If you do a checkin, all things which are changed fall under one new revision. So if you have actually revision 80 and checkin 10 files that have changed, all cheched-in files will become the 81 revision and your main revision goes up to 81 too. The marker on the files tells you, in which revision the last update of the file was or to which revision it came into your svn.

The revision number is going up across all subdirs like Tags, Branches and Trunk. So its very useful to only host one project in one reposatory and not manage different projects under a single repos.

But your steps and tasks all looks fine.

The normal way for me is the following:

-Create repos. 
-Create Trunk,Taks, Branches.
-Initial Import into trunk.
-Copy Trunk to Branch.
-Ask QA to test the Branch.
-Reintegrate Branch into trunk (don´t know which software you use for developing.     
 Normally your software should have an Option for that task. Eclipse does for   
 example). This is called a merge.
-Then copy merged Trunk to Tags in a special subdir.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy