From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.help Subject: How to apply (multi file) patches conveniently Date: Mon, 06 Feb 2017 13:13:14 +0100 Message-ID: <87efzb5xgl.fsf@drachen> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1486383231 22925 195.159.176.226 (6 Feb 2017 12:13:51 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 6 Feb 2017 12:13:51 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) To: Emacs mailing list Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Feb 06 13:13:48 2017 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1caiB1-0005j7-4Q for geh-help-gnu-emacs@m.gmane.org; Mon, 06 Feb 2017 13:13:47 +0100 Original-Received: from localhost ([::1]:47052 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1caiB6-0002kv-QF for geh-help-gnu-emacs@m.gmane.org; Mon, 06 Feb 2017 07:13:52 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58655) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1caiAc-0002js-Ug for help-gnu-emacs@gnu.org; Mon, 06 Feb 2017 07:13:23 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1caiAY-0003Fe-1B for help-gnu-emacs@gnu.org; Mon, 06 Feb 2017 07:13:22 -0500 Original-Received: from mout.web.de ([212.227.15.3]:60852) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1caiAX-0003CU-Nv for help-gnu-emacs@gnu.org; Mon, 06 Feb 2017 07:13:17 -0500 Original-Received: from drachen.dragon ([188.99.162.101]) by smtp.web.de (mrweb003 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MFL64-1cgCLv0UBI-00EQiK; Mon, 06 Feb 2017 13:13:15 +0100 X-Provags-ID: V03:K0:m+8oLJoGrB3NEdp0v4vfABpyFS87DRDS+0GHgI8q8hwPjbwKaW0 OTbDWnLQVvws67qZYvKKeshVlRzKI4J1qn6lcgfONsoP58Fe5qK3e20QNaccBhbHbtnmyY8 5B7qye/Bn33jpzqGyV1x0wjMNI+r+e0Wfr8QNWqPp8UnCSiO5xeYczAdM6PaJwRXLREkuMR 0aRADkhsSzOBlcrMApcpw== X-UI-Out-Filterresults: notjunk:1;V01:K0:TKoLW6hbtZ4=:Xkg4USWryBE8PAdwHT37eV dWdf4qhkQEFSRnediINr4RnClGqikfJqcQj7U4gYlbuP08fos7iTucLbBsmjsdNxWHUOEijvU TLkFgPJybLiccJ5v8zNl0uTYs4XznTPYmAKUnfn0Q9bf40MD4V++y8WyofBK9W5z0JHm+WS3N MVNqkbH2MvcASX9WAC1Im2b4a9pDUuDf+1kH9ALHAW3YwRAgw0nRkNxnHlpzlDgyzWoLYt3iY V10SN3oLbtFut7TZQxT8+XqzzGsu4BJQXQezBMBpdqlEcKOVknGJHNeIx5WGn8Hb5N/SZJR7/ Yrmx8FHdHCvBBc8ROtGUu3QjxHbuUwxe6jP8omE0FdyCMMu5O+6Qb9vAcKhz9SWcofSFDnwZK PI/PVcQ3VAzW3y0vbOt2a2roG0ARhiEzkjUzH7JEPUa/2MpU1RVzp/RjW/7kTTUdsqWtCTvwu EdIGUCItK203jwROprO4xs6+fyzS7V/FeW1Mlvli6JCMyxHk0aqw+LutWApSn2FGEmI4nGHfE 86FUGIwfWlC+UWWgRpayIPWE/lTj1HU3dQ0peZlgzy1iWZzDR5r2QmUa3LohaBQl9jCOQXhyZ 6uABiinU0k2pCY1WvQF4v+xUAZKXjrsYYmLPtYykgaWKYY+B0QWst+/KQ0R7vWl6JbGx0TZtQ MJg4pzwSDYJNQgZ31xff8+Z4J6tqE6bNa2DLxGno4NCftBlIMvjElp+d/P9SYroxw3XS5/+kP lxOkLmXVoIUqZCLS+v44cFOfxl1jT0RX6tBHYLntOZ/wGGAvEUU7Q4GBqpEwIFiRWAyn/rih X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.15.3 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:112257 Archived-At: Hi, I wonder how a convenient way to apply multi-file patches like they are posted in emacs-devel or emacs-bug looks like. Most of the time I first save the patch into a file and try to let git apply it. I do that with Magit (w w). But in 50% of the cases I just get a message like 128 git =E2=80=A6 am --3way -- /home/micha/isearch.patch Patch format detection failed. Though the patch looks normal to me (what could I'm being doing wrong? in 50% of the cases it works as expected, and I don't see that I'm doing something differently in these cases). Since the documentation of git is not really... cool, I tried to find a reliable tool in `epatch'. But it's a total mess. Consider I have a patch with a skeleton that looks like this: doc/misc/cl.texi | 4 +- etc/NEWS | 4 + lisp/emacs-lisp/cl-seq.el | 355 +++++++++++++++++++++----------= ---- test/lisp/emacs-lisp/cl-seq-tests.el | 90 +++++++++ 4 files changed, 307 insertions(+), 146 deletions(-) diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index 8baa0bd88c..6f387f5cbb 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi .... --- a/etc/NEWS +++ b/etc/NEWS .... --- a/lisp/emacs-lisp/cl-seq.el +++ b/lisp/emacs-lisp/cl-seq.el ... I call `epatch', then I'm asked for a directory to which the multi-file patch should be applied to. I'm specifying the name of the root of the emacs repository, in my case, "/home/micha/software/emacs". Epatch should be able to DTRT with this information. But instead, it apparently searches all files in this directory, for example, it searches "cl.texi" in "/home/micha/software/emacs/" instead of "/home/micha/software/emacs/doc/misc/" as expected. As a result, I'm prompted once for the location of every single file. When I happen to make a typo, like specifying "cl-seq.elc" instead of "cl-seq.el", the whole session gets worthless and I can start anew from the beginning. That looks like a bug to me, but why doesn't anyone else complain about this - am I doing something wrong? Thanks, Michael.