Re: [Fundamental problem with relative system paths] [PATCH 2/2] run-command (Windows): Run dashless "git <cmd>"
Zitat von Steffen Prohaska <prohaska@zib.de>:
Show 16 quoted lines
> This might solve a fundamental problem we have with the
> computation of system directories based on relative paths
> in combination with the new gitexecpath 'libexec/git-core'.
> The problem is that the program 'git' is hardlinked to
> directories with different depth. It is either used as
> 'bin/git' (1 directory) or as 'libexec/git-core/git-*'
> (2 directories). Thus, using the same relative path
> in system_path() yields different results when starting from the
> two locations. I recognized the problem because /etc/gitconfig
> is no longer be read.
>
> The patch below might fix the problem by always calling 'bin/git'
> for builtin commands. The computation in system_path() would
> always start from 'bin' and thus yields predictable results. I
> am not sure however if it fully solves the problem because other
> code paths might run the dashed forms directly.
This paragraph should go into the commit message.
Show 7 quoted lines
> I think the only way to verify correctness would be to stop
> installing the dashed forms for builtins. If they were not
> installed they could not be called. The only entry point for all
> builtins would be 'bin/git'. I don't think we want to stop
> installing the dashed forms right away.
>
> So what shall we do?
Your patches make a lot of sense.
Show 5 quoted lines
> -- 8< --
> We prefer running the dashless form, so we should use it in
> MinGW's start_command(), too.
>
> Signed-off-by: Steffen Prohaska <prohaska@zib.de>
Acked-by: Johannes Sixt <johannes.sixt@telecom.at>
-- Hannes