From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Engster Newsgroups: gmane.emacs.devel Subject: Re: Having a custom merge process Date: Sat, 26 Dec 2015 00:59:40 +0100 Message-ID: <87mvsy84gj.fsf@isaac.fritz.box> References: <8337urm0cv.fsf@gnu.org> <83ziwzkl50.fsf@gnu.org> <87lh8jvsqh.fsf@fencepost.gnu.org> <83si2qliho.fsf@gnu.org> <83d1tulaa1.fsf@gnu.org> <838u4il3jf.fsf@gnu.org> <83y4cijo24.fsf@gnu.org> <83twn6jm7e.fsf@gnu.org> <87twn686cn.fsf@isaac.fritz.box> <87poxunllj.fsf@gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1451087999 19825 80.91.229.3 (25 Dec 2015 23:59:59 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 25 Dec 2015 23:59:59 +0000 (UTC) Cc: emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Dec 26 00:59:50 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1aCcGz-00087x-NI for ged-emacs-devel@m.gmane.org; Sat, 26 Dec 2015 00:59:49 +0100 Original-Received: from localhost ([::1]:36919 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aCcGy-0008M0-VV for ged-emacs-devel@m.gmane.org; Fri, 25 Dec 2015 18:59:48 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54996) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aCcGw-0008Lt-H7 for emacs-devel@gnu.org; Fri, 25 Dec 2015 18:59:47 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aCcGt-0004HT-AJ for emacs-devel@gnu.org; Fri, 25 Dec 2015 18:59:46 -0500 Original-Received: from randomsample.de ([5.45.97.173]:41154) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aCcGt-0004H0-11 for emacs-devel@gnu.org; Fri, 25 Dec 2015 18:59:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=randomsample.de; s=a; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From; bh=RC+WWwgfS79lodjG3o3BCw30ZBE3VoG/uP7kYdF4QFA=; b=DUCZ7NMHh+GsRrpEgiLVUWpyc4bziJ5PuepakGTMJwr0ycddYJsWmo3RQo3fXK4TJE3Pmk6V01LMhX7HuzFJOVVO+y6WlLQwvVw2htsienM89NJRHiIz7Yg6a7or4Fxx; Original-Received: from ip4d1494ed.dynamic.kabel-deutschland.de ([77.20.148.237] helo=isaac.fritz.box) by randomsample.de with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1aCcGr-0008Nr-RL; Sat, 26 Dec 2015 00:59:41 +0100 In-Reply-To: <87poxunllj.fsf@gnus.org> (Lars Ingebrigtsen's message of "Sat, 26 Dec 2015 00:40:24 +0100") User-Agent: Gnus/5.13001 (Ma Gnus v0.10) Emacs/24.5 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 5.45.97.173 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:196874 Archived-At: Lars Ingebrigtsen writes: > John Wiegley writes: > >> I've used Git in many scenarios, on many projects, but some of the practices >> we're using here for Emacs development I've never seen before. This simply >> makes me wonder how much of that difference is truly necessary, or is a result >> of having evolved to this point from CVS and then Bazaar. > > I think the latter is probably true. There are many people here who > aren't that fond of git. (I'm one of them. :-)) And that's probably > somewhat unusual, these days. > > But as I see it, other projects just accept gits many, many > peculiarities and live with them, but in the Emacs toolchain we've (I > mean, not me; I had nothing to do with it) tried to create a layer of > sanity and reliability over the gittishness... > > Hey! It's time for a new 500+ article VC thread! Nah, this script does not really have much to do with Git. We had pretty much the same script for Bazaar, I just rewrote it. The main point is still that you want to do a full merge of 'emacs-25', but you want to skip the content of certain commits along the way (in other words: you want to use the merge strategy 'ours' for those commits). Git does not directly support this, and neither did Bazaar. At least Git can often detect cherry-picks, but as I've written, it sometimes fails, and not every commit we want to skip is a backport. The usual way to deal with this is to have one person who does the merges ("the Merge Master"), who needs to have a good overview of development and the used VCS and hence simply knows what to do. The point of gitmerge.el is that pretty much anyone should be able to do the merge. -David