views:

291

answers:

2

We have been using Google Code SVN to store a school project. As we were experimenting with different ideas, we created new Visual Studio Projects and stored them there. Now we want to merge all the different ideas into one final project.

Here is the current layout of the repository:

- svn
 - branches
    - Idea1
    - Idea2
 - tags
 - trunk
    - Sub-Project1
      - files (...)
    - Sub-Project2
      - files (...)
    - Sub-Project3
      - files (...)

I use AnkhSVN along with Visual Studio, one thing I noticed is that everytime I checkout one of the projects, every other project gets checked out too (I can see this when I look at it through windows explorer).

Now that we want to make the final version, I was wondering what is the correct way for me to place the final project.

EDIT

I don't think I did a good job explaining above. So here I go again.

Are google code SVN repositories set up to be for a single project? Or can I use them for multiple sub-projects? The reason I ask this is the SVN file structure in an empty google code project is already:

- svn
 - branches
 - tags
 - trunk

But I would think each sub-project would need these three components.

May be I was not clear before, I have renamed the parts of the trunk (to sub-project) in the above listing. Each sub-project has a unique goal. The thing is I want to combine the sub-projects into a bigger project now.

+2  A: 

What I would do is reorganize stuff like so:

/svn
    /Sub-Project1
        /branches
        /tags
        /trunk
    /Sub-Project2
        /branches
        /tags
        /trunk
    ...

You can do all this with simple svn moves. If your current branches Idea1 and Idea2 are of the current über-trunk then I might move those into a top-level /oldtrunk/branches. Or just delete them if they're inactive! It's svn, they'll still be there. :)

Next, you mention wanting to "combine the sub-projects" where each "has a unique goal". If you want to continue to maintain them as fully encapsulated sub-projects, I would suggest getting them to build individually and combining them as libraries rather than combining the source. In Java I would use a dependency management tool like Ivy to handle this but I'm not sure what the best solution would be for Google Code + Visual Studio. You can use Ivy for non-Java stuff but it's not as intuitive.

Josh McFadden
+1  A: 

Note that you can adjust how many levels up from the location of the solution file AnkhSVN performs the check-out. It should ask at what level the project should be checked out when you use File -> Open Subversion Project, and the property has not been set yet. You can also change it using File -> Subversion -> Change Source Control

Sander Rijken