[p4] Branching questions
Jeff Grills
jgrills at junctionpoint.com
Mon Jun 19 08:55:35 PDT 2006
If it's a question between making the branchspec complicated and the
clientspec complicated, I'd choose the branchspec. There are less people
that need to get it right.
While not directly related to you question, I've done some major directory
restructuring multiple times with perforce and have come up with a
reasonably nifty trick. I took a copy of the directory structure (either by
scanning a properly sync'd client, or by processing "p4 files" output), and
I made the file contents for each file be its depot name (so
c:\work\project\src\hello.c would contain a single text like this:
//depot/project/src/hello.c). Then I opened the directory tree in Windows
Explorer, and I moved files around until I liked the way the directory tree
felt. Then I wrote another script that went through the directory tree and
issued all the appropriate integrate/deletes to make the depot tree match
what I had on my local hard drive. This lets you easily try lots of
different organizations out until you're happy with what you have, and you
can trivially still figure out what integrates need to be done.
j
-----Original Message-----
From: perforce-user-bounces at perforce.com
[mailto:perforce-user-bounces at perforce.com] On Behalf Of Steven W. Orr
Sent: Monday, June 19, 2006 8:50 AM
To: perforce-user at perforce.com
Subject: [p4] Branching questions
I'm trying to develop methodolgies and I have a branching strategy
question.
I have been handed a repository that, for the sake of discussion, has a
misorganized main branch, and the powers that be want the directory
structure redone. I am doing this by creating a branch spec and creating
what will be a new main. After I'm done, everything in the old main will
be in newmain and that newmain branch will be utilized like it really
is main.
My question has to do with use of client specs vs. branchspecs. Once I'm
done creating the newmain branch, I can create a workspace which will be
based on a simple default client spec.
newmain/... -> ...
The alternative would be for everyone going forward to use more complex
client specs that perform the mappings that the branchspec would do just
once. Is there some sort of expressed wisdom somewhere that suggests when
it is more appropriater to use a branchspec to create a fully populated
branch for a group of developers instead of giving the developers an
example client spec that, while more complicated, would end up with the
branch only containing versions that are different from whence they came?
Does this question make sense?
TIA
--
Time flies like the wind. Fruit flies like a banana. Stranger things have
.0.
happened but none stranger than this. Does your driver's license say Organ
..0
Donor?Black holes are where God divided by zero. Listen to me! We are all-
000
individuals! What if this weren't a hypothetical question?
steveo at syslang.net
_______________________________________________
perforce-user mailing list - perforce-user at perforce.com
http://maillist.perforce.com/mailman/listinfo/perforce-user
More information about the perforce-user
mailing list