Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:73586 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 38666 invoked from network); 3 Apr 2014 21:34:58 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Apr 2014 21:34:58 -0000 Authentication-Results: pb1.pair.com header.from=kris.craig@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=kris.craig@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.170 as permitted sender) X-PHP-List-Original-Sender: kris.craig@gmail.com X-Host-Fingerprint: 209.85.214.170 mail-ob0-f170.google.com Received: from [209.85.214.170] ([209.85.214.170:59629] helo=mail-ob0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 72/8C-10692-204DD335 for ; Thu, 03 Apr 2014 16:34:58 -0500 Received: by mail-ob0-f170.google.com with SMTP id uz6so2650943obc.1 for ; Thu, 03 Apr 2014 14:34:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=DusKOog/xceQGbyzFGnZ0UYvo0oOh4UZ287D6m2+gGA=; b=VPW127rqlBeWC43U+Ld66CvF1UHxBl64lYXuSFjeq5Ksf81ZOxB2KAoUKqSJAJLy5r HaYmNO8D5FDLTbODf1XPpJ/7CIZw0YGuQDycCdMqBpuKCxA1gunO9NQ1e7Vig+RO+R+G 8y+Cj3AV9tvS0OAeEd8gFgtzsE2vDKyUXMd67wYzwH2lSdRmVz3Pc2nbdUDwaVzWJRz7 warELWTLVGR0sIJt76ekyWfsp9vUXnSOxHCoY+53pPfx7Z3cglqLsNP4tEiJs4ZaFlRY zDq9r65udeEoOKn4DcRtl0UpiyUXuPTXheMLs47ADQ1Zi8a3pl3XBU73u8Tp81nhpnN/ mEQQ== MIME-Version: 1.0 X-Received: by 10.60.55.97 with SMTP id r1mr12247667oep.5.1396560895621; Thu, 03 Apr 2014 14:34:55 -0700 (PDT) Received: by 10.182.231.230 with HTTP; Thu, 3 Apr 2014 14:34:55 -0700 (PDT) In-Reply-To: <1396527638.2982.350.camel@guybrush> References: <1396523991.2982.340.camel@guybrush> <1396527638.2982.350.camel@guybrush> Date: Thu, 3 Apr 2014 14:34:55 -0700 Message-ID: To: =?ISO-8859-1?Q?Johannes_Schl=FCter?= Cc: Julien Pauli , PHP Internals Content-Type: multipart/alternative; boundary=089e0115f08a1740b904f62a2c1b Subject: Re: [PHP-DEV] Branching PHP6 From: kris.craig@gmail.com (Kris Craig) --089e0115f08a1740b904f62a2c1b Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Thu, Apr 3, 2014 at 5:20 AM, Johannes Schl=FCter wrote: > On Thu, 2014-04-03 at 04:32 -0700, Kris Craig wrote: > > By release branch, are you referring to minor releases or maintenance > > releases? If the latter, it'd be a moot point under this model because > > we'd be getting rid of separate branches for maintenance releases > > altogether. Instead, the RM would simply apply the tag to the commit > where > > they want the maintenance release to occur. That would be a much clean= er > > approach than what we're doing now. > > The past shows that in practice this won't work. We had enough incidents > in the past where "small" changes after an RC roe the release. That's > why we created the strict rule of using those release branches. > That wouldn't happen if the RM controlled commits to the minor release branch. > > > If you want to continue having a gatekeeper approach with only one pers= on > > having access to a minor increment branch, a simple alternative would b= e > to > > have people push their feature branches if they believe the commits > should > > go on one or more minor increments. Then, the release manager for each > > minor increment (i.e. there'd be an RM for 6.0 and 6.1 instead of for > each > > individual maintenance increment) would decide whether or not to merge > that > > feature branch in. The feature branch itself would be based on a minor > > release branch and subsequently deleted after it's either merged or > > rejected. > > Neither do we have the resources for constant gatekeeping nor is that > the spirit. In general we trust developers to do the right things and > prefer fixing mistakes afterwards over preventing improvements by > process. > Actually, that's extremely easy to accomplish with Git. Gitolite, for example, enables the use of branch-specific permissions for different users= . Besides, my point was that this branching model can easily accommodate both scenarios with and without a gatekeeper. > > The reason why we have the "ugly" history comes more from the fact that > we have long living feature branches branched of quite some time ago > (i.e. pull requests) which then are merged in, instead of e.e. rebaseing > the first. > > That's part of it, but I've also noticed a ton of criss-crossed merging happening between version branches. That, more than anything I think, makes it a nightmare to read. Furthermore, there's simply no need to have an ever-increasing number of dead branches that lead nowhere and never merge back. If somebody wants to find a specific version, that's what tags are for. --Kris --089e0115f08a1740b904f62a2c1b--