# patches between commits

3 messages from 2005-12-12 to 2005-12-12. Participants: Bahadir Balban, Alex Riesen, Junio C Hamano.
Thread: https://gitlist.dev/t/2809

## Bahadir Balban, 2005-12-12 15:31

Subject: patches between commits
Message-ID: <7ac1e90c0512120731g3eacdcf0s7e9d1226c88dce73@mail.gmail.com>
URL: https://gitlist.dev/e/7ac1e90c0512120731g3eacdcf0s7e9d1226c88dce73%40mail.gmail.com

```
Hi,

A very basic question - how could I generate patches across different commits?

Suppose I have a HEAD branch, which is the latest. And I want to
generate `individual' patches for each commit I did since the
beginning of development for this branch.

Secondly, is the sha1 of a tree what appears next to each commit when
I type git-log? Is this the only command that lets us know the sha1's
of commits?

Thanks,
Bahadir

```

## Alex Riesen, 2005-12-12 17:33

Subject: Re: patches between commits
Message-ID: <20051212173352.GA3007@steel.home>
URL: https://gitlist.dev/e/20051212173352.GA3007%40steel.home
In-Reply-To: <7ac1e90c0512120731g3eacdcf0s7e9d1226c88dce73@mail.gmail.com>

```
Bahadir Balban, Mon, Dec 12, 2005 16:31:12 +0100:
> Suppose I have a HEAD branch, which is the latest. And I want to
> generate `individual' patches for each commit I did since the
> beginning of development for this branch.

That is what I think "git format-patch <commit>" is for. It will
generate patches to bring "<commit>" to HEAD.

> Secondly, is the sha1 of a tree what appears next to each commit when
> I type git-log? Is this the only command that lets us know the sha1's
> of commits?

"git rev-list", I think

```

## Junio C Hamano, 2005-12-12 17:54

Subject: Re: patches between commits
Message-ID: <7vu0dei4ka.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7vu0dei4ka.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <20051212173352.GA3007@steel.home>

```
Alex Riesen <raa.lkml@gmail.com> writes:

> Bahadir Balban, Mon, Dec 12, 2005 16:31:12 +0100:
>> Suppose I have a HEAD branch, which is the latest. And I want to
>> generate `individual' patches for each commit I did since the
>> beginning of development for this branch.
>
> That is what I think "git format-patch <commit>" is for. It will
> generate patches to bring "<commit>" to HEAD.

Yes, but I think the real question Bahadir wants to know is what
the <commit> parameter should be, if you want to export the
whole history (I do not think there is any suitable argument to
"format-patch" that does this).

>> Secondly, is the sha1 of a tree what appears next to each commit when
>> I type git-log? Is this the only command that lets us know the sha1's
>> of commits?

Depends on what you have, to ask the question "what are their
object names?".

 - I have this commit, how do I find out its object name?
   E.g. I want to know the HEAD commit's object name, second to
   the last commit on "test" branch.

   $ git rev-parse --verify HEAD
   $ git rev-parse --verify test^

 - I have bunch of commits leading to the head of my "test"
   branch.  What are they?

   $ git rev-list test ;# unadorned list of object names and nothing else
   $ git rev-list --pretty test ;# this is git-log
   $ git whatchanged -m -M -p test ;# with patch in full glory

```
