Re: Credential helpers are no longer invoked in case of having sub-folder parts in a repository URL. Since 2.26.1 version
> On 2020-04-21 at 22:58:37, Jeff King wrote:
Show 23 quoted lines
>> This is unrelated to the recent helper fixes in v2.26.x. Here's a simple
>> reproduction:
>>
>> url=https://git.example.com/my-proj/my-repo.git
>> echo url=$url |
>> GIT_TERMINAL_PROMPT=0 \
>> ./git \
>> -c credential.helper= \
>> -c credential.$url.helper='!echo username=foo; echo password=bar;:' \
>> credential fill
>>
>> which should print a filled credential (with "foo/bar"), but will fail
>> with recent versions. It bisects to brian's 46fd7b3900 (credential:
>> allow wildcard patterns when matching config, 2020-02-20).
>
> Yeah, I can reproduce this. It looks like what's happening is that
> we're percent-encoding the slash in the paths as %2f, which of course
> isn't going to match in the urlmatch code. We probably need to tell the
> percent encoding function not to encode slashes in this case.
>
> I'm testing a patch now and hope to have it on the list a little later
> this evening. Thanks for reporting and bisecting, and sorry for the
> breakage.
Thanks. Here's another (though I haven't tried bisecting yet):
echo url='https://github.com/git/git' |
GIT_TERMINAL_PROMPT=0 \
git -c credential.helper= \
-c credential.github.com.helper='!echo username=foo; echo password=bar;:' \
credential fill
produces
fatal: could not read Username for 'https://github.com': terminal prompts disabled
Jonathan