# Is anybody actually using git-cherry.sh?

3 messages from 2006-06-23 to 2006-06-23. Participants: Johannes Schindelin, Jeff King.
Thread: https://gitlist.dev/t/4640

## Johannes Schindelin, 2006-06-23 16:22

Subject: Is anybody actually using git-cherry.sh?
Message-ID: <Pine.LNX.4.63.0606231818140.29667@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0606231818140.29667%40wbgn013.biozentrum.uni-wuerzburg.de

```
Hi,

from git-cherry.sh:

-- snip --
for c in $inup
do
        git-diff-tree -p $c
done | git-patch-id |
while read id name
do
        echo $name >>$patch/$id
done
-- snap --

AFAICS this _must_ be broken. git-diff-tree -p <ent> does not emit 
"diff-tree <sha1>", and neither "commit <sha1>" lines. So this code would 
yield just one file, treating all diffs as one huge diff. A quick fix 
would be this change (without the patch I sent out earlier):

+	echo "diff-tree $c"
 	git-diff-tree -p $c

Am I wrong?

Ciao,
Dscho

```

## Jeff King, 2006-06-23 18:06

Subject: Re: Is anybody actually using git-cherry.sh?
Message-ID: <20060623180658.GA24022@coredump.intra.peff.net>
URL: https://gitlist.dev/e/20060623180658.GA24022%40coredump.intra.peff.net
In-Reply-To: <Pine.LNX.4.63.0606231818140.29667@wbgn013.biozentrum.uni-wuerzburg.de>

```
On Fri, Jun 23, 2006 at 06:22:05PM +0200, Johannes Schindelin wrote:

> from git-cherry.sh:
> 
> -- snip --
> for c in $inup
> do
>         git-diff-tree -p $c
> done | git-patch-id |
> while read id name
> do
>         echo $name >>$patch/$id
> done
> -- snap --
>
> AFAICS this _must_ be broken.  git-diff-tree -p <ent> does not emit
> "diff-tree <sha1>", and neither "commit <sha1>" lines. So this code
> would yield just one file, treating all diffs as one huge diff. A
> quick fix would be this change (without the patch I sent out earlier):

Maybe I don't understand what you're saying, but it works fine here
(using latest head of master):
  $ for c in origin origin^; do git-diff-tree -p $c; done | git-patch-id
  1511e4e276ccc98ecf0ea31dad1bc9010869fdaf f60349aa786d519368938d7b6e5bb2006eccb0cf
  86ce7eeedd87a78cd8cac79adb6d4d968ece9e53 50f575fc9836704d45a5f732125b8f58103425a4

It looks like patch-id does a flush whenever a sha1 is found at the
beginning of a line; diff-tree lines simply have the 'diff-tree ' part
ignored.

-Peff

```

## Johannes Schindelin, 2006-06-23 20:43

Subject: Re: Is anybody actually using git-cherry.sh?
Message-ID: <Pine.LNX.4.63.0606232242500.29667@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0606232242500.29667%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <20060623180658.GA24022@coredump.intra.peff.net>

```
Hi Peff,

On Fri, 23 Jun 2006, Jeff King wrote:

> It looks like patch-id does a flush whenever a sha1 is found at the 
> beginning of a line; diff-tree lines simply have the 'diff-tree ' part 
> ignored.

Ah! Everything makes sense now. Thanks!

Ciao,
Dscho

```
