At my top level I have code, vendors and tools. 'code' contains all of our code, the other two are for imports.
So instead of /code/trunk/proj1 and /code/trunk/proj2, I should have /code/proj1/trunk and /code/proj2/trunk. Then I could branch and merge each project separately. But before I do this, I should make absolutelty sure that these two projects have no interdependencies.
AFAIK, branches are just names. So above and beyond fixing up your mergeinfo's (if you have any), this should work just fine.
JLM
cd ProjectD
svn propset svn:externals local/path path/to/trunk_branch_or_tag
When you change files under path/to/trunk_branch_or_tag and svn up ProjectD, changes come streaming in.
HTH,
Geoff
We have hundreds of trees, each with their own trunk/ branches/ tags/ in one SVN repo. Works great. You may want to look at svn:externals. It may require re-thinking how you're using SVN a bit, but the payoff can be big. Basically you branch or tag anything shared, and load it into ProjectD using
Thus, on ProjectD you'd have
svn propset svn:externals PartA ProjectA/tags/tagA1 PartB ProjectB/tags/tagB1
When you commit and update this, new folders appear (PartA and PartB) from svn checkout of tagA1 and tagB1 respectively. Update those tags or change externals to new tag, and your ProjectD gets the update at next svn up.
----- Original Message -----
From: "Tech Geek" <techge...@gmail.com>
Geoff,I think I am beginning to undestand what you are suggesting.Right now I am in process of implementing this setup. At this point nothing exits - no ProjectD, no PartA and no PartB. So I will try to summarize what I have undestood so far:1. All our SVN repositories lives under the following location:2. Now each of the Project directories - Project A, Project B and Project C are SVN repositories of their own (TortoiseSVN->Create Repository here)3. Now Mr. ProjectD comes along with has two sub-parts - PartA and PartB.So I create a new repository ProjectD (TortoiseSVN->Create Repository here) under this (correct?):and then create two directories (with their own tags, branches and trunk) underneath ProjectD (all using SVN commands) like this:Note that Part A and Part B are not their individual repositories. They are just directories that live under ProjectD which is a repository.
4. Let's say now PartA and PartB code development begings and at some point a tag is created for each of their release:Now let's say the output of Part A - PartA.xcf and output of Part B - PartB.xcf are concatenated into a file called PartAB-R1.xcf.My questions:Q1. At this point I would somehow like to store this file (PartAB-R1.xcf) into my SVN repository (ProjectD). What would be an ideal location (logically) to store such a file. Should I be doing any kind of merging from tags (REL1.0) of PartA and PartB to create another node called "Combined-REL-1.0" or something like that. I would like to avoid this if possible.
Q2. Also when somebody checks out ProjectD I would like that it pulls the PartA and PartB revision history also so that users cab see the "Revision Graph" of PartA and PartB together using the TortoiseSVN client.
Ben