Return-Path: X-Original-To: apmail-incubator-flex-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-flex-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 3EC91D423 for ; Fri, 10 Aug 2012 04:15:53 +0000 (UTC) Received: (qmail 71084 invoked by uid 500); 10 Aug 2012 04:15:52 -0000 Delivered-To: apmail-incubator-flex-dev-archive@incubator.apache.org Received: (qmail 70863 invoked by uid 500); 10 Aug 2012 04:15:51 -0000 Mailing-List: contact flex-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: flex-dev@incubator.apache.org Delivered-To: mailing list flex-dev@incubator.apache.org Received: (qmail 70826 invoked by uid 99); 10 Aug 2012 04:15:49 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Aug 2012 04:15:49 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of justinmclean@gmail.com designates 209.85.213.47 as permitted sender) Received: from [209.85.213.47] (HELO mail-yw0-f47.google.com) (209.85.213.47) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Aug 2012 04:15:40 +0000 Received: by yhjj56 with SMTP id j56so1117202yhj.6 for ; Thu, 09 Aug 2012 21:15:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; bh=vf1Xxt2BOQF+y6j3ilvXpfD/1jwc64wW004sk0EK+AY=; b=0xNIetFEn62yPDLVIoosKEN6jEGWM1jq8l2ZX+0dUUMrEK5UDyy8LSNuV6QR2U8Quv pn9IhXEcFAMsoyrBo6pA0J8vCdHZzQekozvxUtl+EE2iI2YcUuHrKXN/qIPxH/ir8IwC yEze5/oAGyeMt75v1LXMw3/2jy3yVH10on7mzzHpjRyV2B9wnbsSkaIsQCrXX5nVkZ4Z bptaiHaD64jII9gQyK8WgXHMd3HVgDty3b8GD5R5snos8Jdh8pKyOLCKfJowanrHI5+o t8lO/275V1ysEi6TGkmAA/MIqoCSZHI8hCfUuHR2p/8nUcWkKporn/XFlG4cV09jnXLL pmDQ== Received: by 10.66.88.131 with SMTP id bg3mr3328382pab.16.1344572119153; Thu, 09 Aug 2012 21:15:19 -0700 (PDT) Received: from [192.168.0.9] (124-149-46-91.dyn.iinet.net.au. [124.149.46.91]) by mx.google.com with ESMTPS id nk3sm2481814pbc.27.2012.08.09.21.15.17 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 09 Aug 2012 21:15:18 -0700 (PDT) Sender: Justin Mclean Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1280) Subject: Re: The Git Branching Model: Will it work with SVN? From: Justin Mclean In-Reply-To: Date: Fri, 10 Aug 2012 14:15:13 +1000 Content-Transfer-Encoding: quoted-printable Message-Id: <14A6D947-B2DB-4648-8EAD-4D544A31892E@classsoftware.com> References: To: flex-dev@incubator.apache.org X-Mailer: Apple Mail (2.1280) Hi, > Well, there might be a better way, but by your reasoning we would = never > branch. No I am against have a single unstable branch. I see far less issues if = we did use multiple branches (ie one branch per change) OR most small = changes in trunk and branch when needed as suggested by the SVN best = practice document. >> We not talking about the git branching model we are talking about = using a >> single unstable branch or so I thought? > Not in this thread, see subject. OK so just to confirm you now think that a singe unstable branch is not = the way to go?=20 > Maybe you can provide an example? I don't see how one way pushes from > unstable/develop can cause a conflict in trunk. Because of existing changes that have not been pushed into trunk. Person = A checks in files A,B and C (in one changeset), Person B modifies and = checks in file B, Person A then modifies and checks in file B again all = in a non trunk branch. Merging persons A changeset with trunk could then = likely to cause an issue and the trunk may not be in a usage state. To = fix that you then have to make changes directly to trunk and then you = would need to sync those changes with the branch. The simple way around = this issue is to always merge entire branches. I also read carefully the "More on Merge Conflicts" section in the link = you provide. Yes you can cherrypick and block changesets (and shown in = the link you provided) but it's seem overly complex to need to do that = all the time rather than is just exceptional circumstances. > In the Git Branching Model, when we decide we want to prepare a = release > (which would not be daily) we would cut a release branch from develop = and > either take a bunch of known good commits or take from the head, = remove and > block. In which I think you run into the same issues as above re using a single = branch and selecting changesets. > In the Git Branching Model, you would do the merge, resolve conflicts = and > block manually resolved conflicts. Which doesn't answer my question of how you would keep develop/unstable = in sync with the trunk. (See above). > I think the trunk history may not be any different if we use the Git > Branching Model entirely in SVN because the only commit to trunk is = from a > release branch merge operation. Can you think of any way to keep the revision history? It's sometime = very useful to know what small changes were made when, rather than = knowing a whole lot of files and lines changed in this release. Thanks, Justin=