On 2020-04-21 at 22:58:37, Jeff King wrote: > On Wed, Apr 22, 2020 at 01:31:46AM +0300, Ilya Tretyakov wrote: > > > Credential helpers are no longer invoked in case of having sub-folder > > parts in a repository URL. > > > > For example, if we have a "/my-proj/" part in the repository URL. > > The following configuration doesn't invoke a credential helper script > > in 2.26.1 version of Git but invokes in 2.24.1.2. > > > > [credential "https://git.exaple.com/my-proj/my-repo.git"] > > helper = !'/c/some-path/bash-git-credential-helper/git-cred.sh' > > provide repo_b > > 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. -- brian m. carlson: Houston, Texas, US OpenPGP: https://keybase.io/bk2204