Re: git rebase -i --exec and changing directory
Bump? Has anyone had time to look at this?
Thanks,
Ondrej Mosnacek
2018-05-19 18:38 GMT+02:00 Ondrej Mosnáček <omosnacek@gmail.com>:
Show 39 quoted lines
> Hello,
>
> I am trying to run a script to edit multiple commits using 'git rebase
> -i --exec ...' and I ran into a strange behavior when I run 'cd'
> inside the --exec command and subsequently run a git command. For
> example, if the command is 'cd src && git status', then git status
> reports as if all files in the repository are deleted.
>
> Example command sequence to reproduce the problem:
>
> # Setup:
> touch a
> mkdir dir
> touch dir/x
>
> git init .
> git add --all
> git commit -m commit1
> git tag base
> touch b
> git add --all
> git commit -m commit2
>
> # Here we go:
> git rebase -i --exec 'cd dir && git status' base
>
> # Spawning a sub-shell doesn't help:
> git rebase -i --exec '(cd dir && git status)' base
>
> Is this expected behavior or did I found a bug? Is there any
> workaround, other than cd'ing to the toplevel directory every time I
> want to run a git command when I am inside a subdirectory?
>
> $ git --version
> git version 2.17.0
>
> Thanks,
>
> Ondrej Mosnacek