Re: being nice to patch(1)
- From
- Andrew Morton <akpm@linux-foundation.org>
- Date
- Jul 2, 2007, 21:25 UTC
- Message-ID
- <20070702142557.eba61ccd.akpm@linux-foundation.org>
- In-Reply-To
- <alpine.LFD.0.98.0707021409510.9434@woody.linux-foundation.org>
On Mon, 2 Jul 2007 14:16:16 -0700 (PDT) Linus Torvalds <torvalds@linux-foundation.org> wrote:
Show 37 quoted lines
> > > On Mon, 2 Jul 2007, Andrew Morton wrote: > > > > James's current git-scsi-misc has this commit in it: > > > > commit a16efc1cbf0a9e5ea9f99ae98fb774b60d05c35b > > Author: Kars de Jong <jongk@linux-m68k.org> > > Date: Sun Jun 17 14:47:08 2007 +0200 > > > > [SCSI] 53c700: Amiga 4000T NCR53c710 SCSI > > > > New driver for the Amiga 4000T built-in NCR53c710 SCSI controller, using the > > 53c700 SCSI core. > > > > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> > > Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> > > > > > > When one pulls that diff out of git with `git-show' or whatever, it doesn't > > work - patch(1) has a heart attack over the "53c700": > > There's really nothing git can do about this, this is a patch oddity about > the free-form message. A really strange one too, because the line is > literally four spaces followed by the 53c700, and the thing is, that's not > even a valid olf-fashioned patch (_without_ the four spaces, I could see > that "patch" might think that it's a really old ed- > > I think you have two options: > > - tell patch to take it as a unified diff: > > git show | patch -p1 -u > > should work, since patch won't be trying to figure out what kind of > diff it is, and won't think that the 53c700 is some kind of odd ed > script.
yup, `patch -u' fixes it up.
Show 10 quoted lines
> - suppress the free-form messages, by using (for example) > > git show --pretty=oneline | patch -p1 > > and now "patch" doesn't get any random commit message except for the > first line (which always starts with the SHA1) and hopefully cannot > _possibly_ interpret that to be some strange patch format. > > Or, of course, just use "git-apply" instead of patch to apply the thing. >
Thing is, changelog-followed-by-diff is a fairly standard format used by quilt and other such toys.
Hopefully quilt is using -u so it won't encounter this oddity.