git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 3/3] diffstat generation in hooks--update was passing "^baserev" to git-diff-tree

From
Johannes Sixt <j.sixt@eudaptics.com>
Date
Feb 13, 2007, 17:16 UTC
Message-ID
<45D1F26A.28FEADD8@eudaptics.com>
In-Reply-To
<200702131632.37401.andyparkins@gmail.com>
Andy Parkins wrote:
Show 10 quoted lines
> > You still need to derive a merge-base, but only to detect the forced
> > update and to format the message. Then you should use --not $baserev
> > instead of ^$baserev just in case there is more than one merge-base.
> 
> Are you suggesting something like this?
> 
> git-rev-parse --not --all $baserev | git-rev-list --stdin --pretty $newrev
> 
> Which would start showing from $newrev but would exclude all baserevs and all
> existing branches.
You are using ^$baserev in two instances.

(1) in a for loop which obviously is intended as a table of contents (revs plus rev-type (can this be anything else than 'commit'?)). Here you should use

git-rev-list $newrev --not $baserev

(2) later to print the log messages for all new revs. Here you use just this:

git-rev-list --pretty $oldrev..$newrev
Then the diffstat:
git-diff-tree --no-color --stat -M -C --find-copies-harder \
  $oldrev $newrev

This reflects the modifications of the revisions that have just been listed *only* in the fast-forward case. But even in the forced update case it tells how the old tree transformed into the new tree, and for this reason nothing more complicated is needed, IMO.

-- Hannes
Previous: Andy ParkinsNext: Linus Torvalds
Message 4 of 6 in “diffstat generation in hooks--update was passing "^baserev" to git-diff-tree”
  1. 3/3 diffstat generation in hooks--update was passing "^baserev" to git-diff-treeAndy Parkins, Feb 13, 2007
  2. Johannes SixtFeb 13, 2007
  3. Andy ParkinsFeb 13, 2007
  4. Johannes SixtFeb 13, 2007
  5. Linus TorvaldsFeb 13, 2007
  6. Andy ParkinsFeb 13, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.