Re: rev-parse --show-toplevel broken during exec'ed rebase?
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jul 12, 2018, 14:49 UTC
- Message-ID
- <nycvar.QRO.7.76.6.1807121647310.75@tvgsbejvaqbjf.bet>
- In-Reply-To
- <CAF8PYMikJZF4Qk4VHhAUPB80LG=gjZBVNBu0yGKCLLPpdG_3sg@mail.gmail.com>
Hi Vitali,
[please avoid top-posting on this mailing list]
On Wed, 11 Jul 2018, Vitali Lovich wrote:
Show 25 quoted lines
> On Wed, Jul 11, 2018 at 7:50 PM Vitali Lovich <vlovich@gmail.com> wrote: > > > > Typically git rev-parse --show-toplevel prints the folder containing > > the .git folder regardless what subdirectory one is in. One exception > > I have found is that if one is within the context of git rebase --exec > > then show-toplevel always just prints the current directory it's > > running from. > > > > Repro (starting with cwd within git project): > > > (cd xdiff; git rev-parse --show-toplevel) > > ... path to git repository > > > git rebase -i 18404434bf406f6a6f892ed73320c5cf9cc187dd > > # Stop at some commit for editing > > > (cd xdiff; git rev-parse --show-toplevel) > > ... path to git repository > > > git rebase 18404434bf406f6a6f892ed73320c5cf9cc187dd -x "(cd xdiff; git rev-parse --show-toplevel)" > > ... path to git repository/xdiff !!! > > > > This seems like incorrect behaviour to me since it's a weird > > inconsistency (even with other rebase contexts) & the documentation > > says "Show the absolute path of the top-level directory." with no > > caveats. > > Sorry. Forgot to include the git versions I tested with (2.13.1, > 2.17.0, 2.18.0)
This is actually not so much a bug in `rebase` as in `rev-parse --show-top-level`:
$ GIT_DIR=$PWD/.git git -C xdiff rev-parse --show-toplevel C:/git-sdk-64/usr/src/git/xdiff
Ciao, Johannes