Hi Bob!

On 2025-07-27T08:55:04+0200, Andreas Schwab <sch...@linux-m68k.org> wrote:
> On Jul 26 2025, Robert Dubner wrote:
>> Follow-up:  After poking around on the internet for inspiration, I used
>>
>> git log 
>> basepoints/gcc-15~1..HEAD --reverse --grep="^gcc/cobol" --grep="^libgcobol"  
>> --grep="cobol.dg"

You need to start at the GCC 16 base point (basepoints/gcc-16), not the
GCC 15 one (basepoints/gcc-15).

> git rev-list --reverse --grep=^cobol --grep=^libgcobol 
> origin/releases/gcc-15..origin/master -- gcc/cobol libgcobol "*/cobol.dg/*"

(Without the '^' anchors, I suppose, and/or without specifying both of
the '--grep's and the paths?)

Something like that, or I'd just have done:

    $ rev_start=origin/releases/gcc-15 # Will be different next time.
    $ git log --reverse --oneline "$rev_start"..origin/trunk -- gcc/cobol/ 
libgcobol/ gcc/testsuite/cobol.dg/ | grep -v 'Daily bump.' | less

... or:

    $ git log --reverse --stat -p "$rev_start"..origin/trunk -- gcc/cobol/ 
libgcobol/ gcc/testsuite/cobol.dg/

This gives a list of 50 commits, a few of which already are on
releases/gcc-15 branch, a few not applicable, and the remaining ones, I'd
individually 'git check-pick -x [hash]', which mostly should just work,
or if it requires some manual work, then 'git add [...]',
'git cherry-pick --continue'.

Special care might be necessary for any commits that didn't touch
'gcc/cobol/', 'libgcobol/', 'gcc/testsuite/cobol.dg/' but are still
relevant, like build system changes.  That's where some
'--regexp-ignore-case --grep=cobol' might come handy, so maybe just work
on:

    $ git log --reverse --stat -p --regexp-ignore-case --grep=cobol 
"$rev_start"..origin/trunk


Grüße
 Thomas

Reply via email to