-
Notifications
You must be signed in to change notification settings - Fork 615
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move Git Credential Manager out of Git's exec path #406
Conversation
The Git Credential Manager is really a stand-alone product and not part of core Git. But putting its executable into core Git's exec path gave that misleading impression. Let's just move it out of the exec path into the regular `bin/` directory, just like we did with Git LFS in a57279d (Move git-lfs binary back out of git-core, 2017-04-06). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me! It would be good to move ourselves out of the soup of core binaries somewhat.
GCM doesn't have any expectations on its location when bundled (libexec/
or otherwise) so there should be no direct impact on us.
There may/will be impact on those consumers of MinGit that call GCM directly in their applications (such as Visual Studio), and they'll need to update their relative file paths to match this change.
@ldennington for visibility
The path to git-credential-manager-core.exe has changed according to this [PR](git-for-windows/build-extra#406) and the comments in the [v2.36.1 release notes](https://github.com/git-for-windows/git/releases/tag/v2.36.1.windows.1)
At long last, we do the same with Git Credential Manager as did with Git LFS in a57279d: we move its executables into the regular
/mingw64/bin/
directory (or/mingw32/bin/
in i686 setups).This provides for a cleaner separation between the non-built-in Git commands that are part of core Git (which are supposed to live in Git's exec path) and third-party commands such as Git LFS, Git Credential Manager, or even Git for Windows'
git update-git-for-windows
andgit credential-helper-selector
.It will also open the door for addressing git-for-windows/git#3668 by teaching Git an option to override the standard
PATH
search behavior for third-party Git commands only (current idea is to look throughPATH
and not use the first, but the one with the most recentctime
).