Howdy,
Our releases follow a shopping cart analogy. The pieces of our releases
are pretty diverse: BIOS, platform drivers, management software, and
more. We can have a releases that have the same platform drivers,
management software but different BIOS's -- and all other sorts of
combinations.
My thinking is that we can use Externals Definitions to manage these
releases. Thus, developers get to work on whatever project that makes
sense for them -- BIOS dev's don't have to worry about the platform
driver project and vice-versa. But, when it comes release time, the CM
(me) will do a get from a single folder and start the build process. So,
I am planning on having empty folders that I have applied an
svn:externals property to like so:
https://domain/releases/superman_generic_1.0/
svn:externals
bios https://domain/bios/trunk/superman/bios
mgmt https://domain/mgmt/trunk/superman/bios
drvrs https://domain/mgmt/trunk/superman/drvrs
https://domain/releases/superman_customerspecific_1.0/
bios https://domain/bios/branch/customername/bios
mgmt https://domain/mgmt/trunk/superman/bios
drvrs https://domain/mgmt/trunk/superman/drvrs
However, I have to be able to generate a list of file changes since the
last build. Currently, my build system (Anthill Pro) is performing the
diff like so:
svn log --non-interactive -v -r {2005-12-07 13:21:14}:{2005-12-07
15:26:16} https://domain/releases/superman_generic_1.0/
But, that is only picking up changes to superman_generic_1.0 itself.
What I need is the revisions since the last build in the projects listed
in svn:externals.
Anybody have to solve this problem before? Given the success I've had
with svncopy.pl, I'm hoping that some script is already written that
does this for me.
Thanks!
Robert
Received on Thu Dec 8 16:55:19 2005