Oh Sorry, the --porcelain=v2 went by unnoticed (not mentioned in the docs). Thanks for the clarification! Best, tk On Sun, Mar 27, 2022 at 2:47 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Tone Kastlunger <users.giulietta@xxxxxxxxx> writes: > > > "git status --porcelain" output from the same location: > > > > ....cutted stuff to keep things clean... > > M src/api/db.py <---- Notice the missing ".." in front of the > > (modified) file path. > > > > Is this intentional/expected behaviour; and if not, we were wondering > > if this is a known issue? > > Yes, this is working as designed and any future versions of Git will > not change it. Scripts can forever rely on the fact that it can get > paths relative to the root of the working tree regardless of where > in the working tree they start. > > You can add this: > > [status] > relativepaths=no > > to your ~/.gitconfig and "git status" (without --porcelain option) > will also show paths relative to the root of the working tree > (i.e. without ugly ../ prefix). > > We made --porcelain=v2 to get affected by the status.relativepaths > configuration, which may probably have been a mistake, but that is > also too late to fix now. It defaults to show paths relative to the > directory the command happened to be run, and in order to get a > reliable output, the calling script must override status.relativepaths > configuration variable the end-user may have, e.g. > > git -c status.relativepaths=no status --porcelain=v2 > > > > >