Re: [PATCH v1 05/11] git-gui: use --absolute-git-dir
- From
Mark Levedahl <mlevedahl@gmail.com>
- Date
- May 16, 2026, 14:33 UTC
- Message-ID
- <e5eb5105-6e6d-4e68-afc5-107e4b4a8472@gmail.com>
- In-Reply-To
- <948f9f9f-8225-4bfe-be7d-e9b03c912aeb@kdbg.org>
On 5/15/26 12:00 PM, Johannes Sixt wrote:
Show 22 quoted lines
> Am 14.05.26 um 16:33 schrieb Mark Levedahl:
>> git-gui uses git rev-parse --git-dir to get the pathname of the
>> discovered git repository. The returned value can be relative, and is
>> '.' if the current directory is the top of the repository directory
>> itself. git-gui has code to change '.' to [pwd] in this case so that
>> subsequent logic runs.
>>
>> But, git rev-parse supports --absolute-git-dir from fac60b8925
>> ("rev-parse: add option for absolute or relative path formatting",
>> 2020-12-13), and included in git 2.31. git-gui requires git >= 2.36, so
>> this more useful form is always available. Use --absolute-git-dir to
>> always get an absolute path, avoiding the need for other checks.
> Nice!
>
> However, the patch is incomplete. We set _gitdir also from
> lib/choose_repository.tcl. I think it would be best to swap this patch
> with patch 4/11, remove the _gitdir setters from the picker
> implementation, and call `rev-parse --absolute-git-dir` like you did in
> 4/11. This depends on that the picker sets the current directory to the
> top-level of the working tree with the embeded .git directory.
>
> BTW, missing sign-off.I will change the interface to the picker so that success / failure is a returned value rather than _gitdir being non-empty, then rework order and content of these patches.
Mark