Skip to content

Conversation

@technoweenie
Copy link
Contributor

@technoweenie technoweenie commented Oct 26, 2017

This PR adds support for per-url credential helpers (#2686) and fixes performance issues discussed in #2690.

  • Teach the LFS credential cacher to only call approve the first time. LFS should only ever call git credential approve for a given url/path once in the lifetime of a single LFS command.
  • Teach the LFS HTTP client to only call Approve() on the credential helper if it was used for a request. I don't know how other LFS servers work, but GitHub's doesn't require it for transferring specific objects.
  • Add approve tracing to LFS so we can confirm a fix.
  • Teach LFS to only send path to credential helpers if credential.useHttpPath is enabled.
  • If askpass is set, fall back to credential helper if it's misconfigured.
  • Check for credential.<url>.usehttppath and credential.<url>.helper

By creating the credential helper per request, any notion of a cache is lost. So, there's still more work to be done in (*Client) getCredentialHelper.

@technoweenie technoweenie added this to the v2.4.0 milestone Oct 26, 2017
@technoweenie
Copy link
Contributor Author

Here are some sample builds in case anyone wants to try this out:

git-lfs-darwin-amd64-2.3.4.tar.gz
git-lfs-linux-amd64-2.3.4.tar.gz
git-lfs-windows-amd64-2.3.4.zip

@wouterh-dev
Copy link

As mentioned in #2634 (comment) I tested the linux build and confirmed they resolve #2695

@technoweenie technoweenie merged commit b32a7ef into master Oct 30, 2017
@technoweenie technoweenie deleted the cred-helper-improvements branch October 30, 2017 20:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants