unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Arseny Sher <sher-ars@yandex.ru>
To: Tino Calancha <tino.calancha@gmail.com>
Cc: Michael Heerdegen <michael_heerdegen@web.de>, 26028@debbugs.gnu.org
Subject: bug#26028: 26.0.50; epatch for multifile patches
Date: Thu, 09 Mar 2017 14:44:11 +0300	[thread overview]
Message-ID: <87shmmvfn8.fsf@yandex.ru> (raw)
In-Reply-To: <87d1drfcqp.fsf@calancha-pc> (Tino Calancha's message of "Thu, 09 Mar 2017 10:41:18 +0900")

Tino Calancha <tino.calancha@gmail.com> writes:

>> How should I apply tmp.patch to proj?
> Ediff uses the `default-directory' for the patch buffer as a hint.
> When i apply patches generated with VCS i _always_ set the
> `default-directory' of the patch buffer equal as the root directory of
> the project.  That makes multi patches work OK.
> This is how i would do in your exmple:
> M-: (dired "/tmp/proj") RET
> C-x b *p* RET ; Now copy the patch here in your favourite way.
> C-x 4 r /tmp/tmp.patch RET
> C-x h M-w C-x o C-y
> M-x epatch RET y *p* RET /tmp/proj/src RET

Honestly, I didn't understand your answer.
1) I don't see any effects of changing the default directory. I set
   default directory of buffer with patch to ~/tmp/proj as you say, then
   run epatch, firstly point it to this buffer, then specify ~/tmp/proj
   (because this is project root, and I want to patch the whole project!)
   as target directory and it fails again, exactly as before.
2) Interpreting your instructions literally, I should specify
   ~/tmp/proj/src as target directory to ediff (answer to its last
   question). Well, then it works, but this is precisely the behaviour
   which doesn't make any sense to me: ediff just ignores the path to
   file ('src' directory here). And it happens totally independent of
   default directory value, I tried with different ones.
   I suppose that the whole point of applying multifile patch is to allow
   ediff deduce which files (with full paths) it needs to patch
   automatically, without manually specifying dirs like 'src'. Imagine
   we have also hello.h file under proj/include; then, if I tell ediff
   to use ~/tmp/proj/src dir as target directory as you say, it will
   successfully patch hello.c, but it will fail again attempting to
   patch hello.h, because there is no such file proj/src/hello.h.

So, it is hard for me to suggest better epatch behaviour because I
actually don't comprehend its current one. I don't know why other people
don't encounter these problems. Probably they just apply patches via git
and only then look at the diff via ediff, and I should go the same
way...






  reply	other threads:[~2017-03-09 11:44 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-08 17:29 bug#26028: 26.0.50; epatch for multifile patches Arseny Sher
2017-03-08 19:17 ` Eli Zaretskii
2017-03-08 21:53   ` Arseny Sher
2017-03-09  1:41     ` Tino Calancha
2017-03-09 11:44       ` Arseny Sher [this message]
2017-05-23 11:26     ` Tino Calancha
2017-05-23 22:45       ` Michael Heerdegen
2017-05-24  0:46         ` Tino Calancha
2020-08-11  7:34           ` Stefan Kangas
2020-10-03 22:25             ` Michael Heerdegen
2021-05-10 12:02               ` Lars Ingebrigtsen
2021-05-12  9:27                 ` Michael Heerdegen
2021-05-13 16:29                 ` Filipp Gunbin
2021-05-16 13:57                   ` Lars Ingebrigtsen
2021-07-23 12:54                     ` Lars Ingebrigtsen
2022-03-24  8:34                       ` Lars Ingebrigtsen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shmmvfn8.fsf@yandex.ru \
    --to=sher-ars@yandex.ru \
    --cc=26028@debbugs.gnu.org \
    --cc=michael_heerdegen@web.de \
    --cc=tino.calancha@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).