git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jakub Narebski <jnareb@gmail.com>
To: Lennart Sorensen <lsorense@csclub.uwaterloo.ca>
Cc: "Alejandro Riveira Fernández" <ariveira@gmail.com>,
	"Randy Dunlap" <rdunlap@xenotime.net>, Andy <genanr@emsphone.com>,
	linux-kernel@vger.kernel.org, git@vger.kernel.org
Subject: Re: How can I download a git commit as a diff patch?
Date: Wed, 30 Sep 2009 22:40:16 +0200	[thread overview]
Message-ID: <200909302240.17729.jnareb@gmail.com> (raw)
In-Reply-To: <20090930202527.GB22159@csclub.uwaterloo.ca>

On Wed, 30 Sep 2009, Lennart Sorensen wrote:
> On Wed, Sep 30, 2009 at 01:10:51PM -0700, Jakub Narebski wrote:

> > Or better yet, if given installation of gitweb supports it, on the
> > 'patch' link just on the right of 'raw' view.  Such patch can be
> > applied better by git-am (but both should work for GNU patch or
> > git-apply).
> > 
> > Yes, by default for merges the 'commitdiff' view (and the 'raw'
> > version, i.e. 'commitdiff_plain' view) shows **combined** diff of
> > changes brought by merge (see git-diff manpage for details on this
> > format).
> > 
> > For merge commit you have to choose which of parents you want to have
> > diff from.  Go to 'commit' view, there in the header would be two or
> > more parents.  Click on the 'diff' link beside chosen parent, check if
> > it is the diff you want to get, and then click on 'patch' (or 'raw')
> > link.
> 
> Is there a git command to show me a diff I can use with patch if I want to
> select a given patch as long as I can tell it which tree I want to follow?
> I don't care to use gitweb if I can do it with the command line git.

You can specify parent explicitely: "git diff <rev>^1 <rev>" for diff
to first parent, e.g. "git diff HEAD^ HEAD".

> 
> git show obviously shows the git combined diff format, at least by default.
> 
> Or is the idea of trying to use the diff from the merge commit just
> silly in the first place?

Just so you know that this single diff is not enough to redo a merge.
It is only partial information.


BTW. there is also "git diff-tree -m <rev>") to show diff to *all*
parents at once:

    -m    By default, `git-diff-tree --stdin` does not show differences for
          merge commits. With this flag, it shows differences to that commit
          from all of its parents. See also `-c`.

-- 
Jakub Narebski
Poland

  reply	other threads:[~2009-09-30 20:40 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20090930154410.GA31502@thumper2>
     [not found] ` <20090930085500.a5856301.rdunlap@xenotime.net>
     [not found]   ` <20090930190014.GA22161@csclub.uwaterloo.ca>
2009-09-30 19:38     ` How can I download a git commit as a diff patch? Alejandro Riveira Fernández
2009-09-30 20:10       ` Jakub Narebski
2009-09-30 20:25         ` Lennart Sorensen
2009-09-30 20:40           ` Jakub Narebski [this message]
2009-09-30 21:07             ` Lennart Sorensen

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

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

  git send-email \
    --in-reply-to=200909302240.17729.jnareb@gmail.com \
    --to=jnareb@gmail.com \
    --cc=ariveira@gmail.com \
    --cc=genanr@emsphone.com \
    --cc=git@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lsorense@csclub.uwaterloo.ca \
    --cc=rdunlap@xenotime.net \
    /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.
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 NNTP newsgroup(s).