[p4] RE: perforce-user digest, Vol 1 #1460 - 4 msgs

George vanTreeck George.vanTreeck at plumtree.com
Mon Jun 14 14:11:11 PDT 2004


My suggestion is to create subproject branch off of main. After main is
integrated into the 4.1.0 branch, the subproject is merged back into
main (generally an "accept theirs" copy into main, such that the head of
main looks exactly like that in the subproject branch -- which means
zero merge work on the part of the developers). And of course, delete
the subproject branch after the copy back into main.

On larger projects, you might keep the subproject branch as the active
development branch until release, and merge stable development snapshots
into main. This branch-based promotion mechanism helps to keep other
projects from being destabilized while continuously pulling from the
head of main.

This is better than the other projects working off of some "blessed"
snapshot label on main of your project, because it's human nature to
delay as long as possible before moving to a later snapshot to keep from
being destabilized. The result is that when they finally do move to
using a later snapshot, the time to re-stabilize is always much longer
than anticipated, i.e., you can count on schedule slips.

Other projects referencing the head of main, which only has stable
snapshots has the cost of continuous small re-stabilizations. It is
better to suffer continual small re-stabilizations, because you can
measure the average cost of continuous re-stabilization and factor that
into schedule estimations. Note that for this to work, it requires a
"contract" that top priority is always given to fixing any bugs in main
that destabilize the referencing projects.

-George

-----Original Message-----
From: perforce-user-admin at perforce.com
[mailto:perforce-user-admin at perforce.com] On Behalf Of
perforce-user-request at perforce.com
Sent: Monday, June 14, 2004 12:05 PM
To: perforce-user at perforce.com
Subject: perforce-user digest, Vol 1 #1460 - 4 msgs

Send perforce-user mailing list submissions to
	perforce-user at perforce.com

To subscribe or unsubscribe via the World Wide Web, visit
	http://maillist.perforce.com/mailman/listinfo/perforce-user
or, via email, send a message with subject or body 'help' to
	perforce-user-request at perforce.com

You can reach the person managing the list at
	perforce-user-admin at perforce.com

When replying, please edit your Subject line so it is more specific
than "Re: Contents of perforce-user digest..."


Today's Topics:

   1. Question about branching/integrating (David Rybolt)
   2. Re: Question about branching/integrating (Chuck Karish)
   3. Re: Question about branching/integrating (Noel Yap)
   4. Re: Question about branching/integrating (David Rybolt)

--__--__--

Message: 1
Date: Mon, 14 Jun 2004 00:39:35 -0700 (PDT)
From: David Rybolt <dagg at yahoo.com>
To: perforce-user at perforce.com
Subject: [p4] Question about branching/integrating

Hello,

I regularly run into this branching conundrum, and was
wondering if anyone had any suggestions.

My current directory structure looks something like
this (only showing relevant directories):

  //depot/project/main/...
  //depot/project/releases/4.1.0/...

The 4.1.0 directory was branched from main about
3 weeks ago, and both main and 4.1.0 have had
checkins since the branch.

This was working great for a while.  I'd merge
the 4.1.0 code back into main as necessary, and
everything was good.  However, now my developers
want to start checking in new code for a new
release, but they don't know if it'll actually
go to production before or after the code
in my mainline.

Any suggestions?

Here is what I can't do:

  1. Branch from main, because I might not want a
     lot of the recent main code.

  2. I can't branch from the 4.1.0 branch, because
     merging it back into main would be a pain.

Thanks for your help,
Dave


	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 

--__--__--

Message: 2
Date: Mon, 14 Jun 2004 06:27:42 -0700
From: Chuck Karish <chuck.karish at gmail.com>
Reply-To: karish at well.com
To: David Rybolt <dagg at yahoo.com>
Subject: Re: [p4] Question about branching/integrating
Cc: perforce-user at perforce.com

Branch from main at a point where you're sure that you'll take
everything.   Integrate features from main to your new release branch
as they're finished.

A more radical approach:  Make a permanent forward-development branch,
and integrate features from //depot/dev only when theu're ready to be
released.  The main line stays clean, the developers grumble about
doing one more integration, the project managers love that release
readiness is predictable and that they control release contents.

  Chuck Karish

On Mon, 14 Jun 2004 00:39:35 -0700 (PDT), David Rybolt <dagg at yahoo.com>
wrote:
> 
> Hello,
> 
> I regularly run into this branching conundrum, and was
> wondering if anyone had any suggestions.
> 
> My current directory structure looks something like
> this (only showing relevant directories):
> 
>   //depot/project/main/...
>   //depot/project/releases/4.1.0/...
> 
> The 4.1.0 directory was branched from main about
> 3 weeks ago, and both main and 4.1.0 have had
> checkins since the branch.
> 
> This was working great for a while.  I'd merge
> the 4.1.0 code back into main as necessary, and
> everything was good.  However, now my developers
> want to start checking in new code for a new
> release, but they don't know if it'll actually
> go to production before or after the code
> in my mainline.
> 
> Any suggestions?
> 
> Here is what I can't do:
> 
>   1. Branch from main, because I might not want a
>      lot of the recent main code.
> 
>   2. I can't branch from the 4.1.0 branch, because
>      merging it back into main would be a pain.
> 
> Thanks for your help,
> Dave
> 
> 
> __________________________________
> Do you Yahoo!?
> Friends.  Fun.  Try the all-new Yahoo! Messenger.
> http://messenger.yahoo.com/
> _______________________________________________
> perforce-user mailing list  -  perforce-user at perforce.com
> http://maillist.perforce.com/mailman/listinfo/perforce-user
>

--__--__--

Message: 3
Date: Mon, 14 Jun 2004 10:37:43 -0400
From: Noel Yap <Noel.Yap at morganstanley.com>
Organization: Morgan Stanley
To: David Rybolt <dagg at yahoo.com>
Cc: perforce-user at perforce.com
Subject: Re: [p4] Question about branching/integrating

David Rybolt wrote:
> This was working great for a while.  I'd merge
> the 4.1.0 code back into main as necessary, and
> everything was good.  However, now my developers
> want to start checking in new code for a new
> release, but they don't know if it'll actually
> go to production before or after the code
> in my mainline.

I don't quite understand this last part.  Can you give an example,
please?

Thanks,
Noel

--__--__--

Message: 4
Date: Mon, 14 Jun 2004 11:13:19 -0700 (PDT)
From: David Rybolt <dagg at yahoo.com>
Subject: Re: [p4] Question about branching/integrating
To: Noel Yap <Noel.Yap at morganstanley.com>
Cc: perforce-user at perforce.com

--- Noel Yap <Noel.Yap at morganstanley.com> wrote:
> I don't quite understand this last part.  Can you
> give an example, please?
> 
> Thanks,
> Noel

I'll give it a shot:

  1. //depot/a/... was branched to //depot/b/...
  2. Files in //depot/a/... were edited.
  3. Files in //depot/b/... were edited.
  4. //depot/b/... was merged into //depot/a/...
  5. Developers now want a new place to check in
     some files.  They _don't_ know if they 
     want to incorporate the latest //depot/a/...
     code, but they _do_ know they want to 
     incorporate all of the //depot/b/... code.

     I'll create //depot/c/... , but I don't
     know where to branch it from.

For #5, we don't know if //depot/c/ will be released
to production before or after //depot/a/ .

My inclination is to branch from //depot/b/, but
that seems to cause lots of merging headaches, later.

Dave


	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 


--__--__--

_______________________________________________
perforce-user mailing list  -  perforce-user at perforce.com
http://maillist.perforce.com/mailman/listinfo/perforce-user


End of perforce-user Digest






More information about the perforce-user mailing list