Git credential manager for windows что это
Git-Credential-Manager-for-Windows
Secure Git credential storage for Windows with support for Visual Studio Team Services, GitHub, and Bitbucket multi-factor authentication.
Git Credential Manager for Windows
NOTICE: This project is no longer being maintained. :warning:
Git Credential Manager for Windows is no longer being maintained. The cross-platform Git Credential Manager Core (GCM Core) is the official replacement.
GCM Core is included as an optional component of Git for Windows 2.28 and will be made the default credential helper as of Git for Windows 2.29. GCM Core can also be manually installed from this page.
NOTICE: Experiencing GitHub push/fetch problems?
GitHub will disable password-based authentication on APIs Git Credential Manager for Windows uses to create tokens. As a result, GCM for Windows will no longer be able to create new access tokens for GitHub.
Git Credential Manager Core (GCM Core) supports OAuth-based authentication with GitHub and is the replacement for GCM for Windows.
Please update to Git for Windows 2.28 and select “Git Credential Manager Core” from the installer when asked to “select a credential helper”, or manually install GCM Core from here.
As of 22 Feb 2018, GitHub has disabled support for weak encryption which means many users will suddenly find themselves unable to authenticate using a Git for Windows which (impacts versions older than v2.16.0). DO NOT PANIC, there’s a fix. Update Git for Windows to the latest (or at least v2.16.0).
The most common error users see looks like:
If, after updating Git for Windows, you are still having problems authenticating with GitHub, please read this Developer Community topic which contains additional remedial actions you can take to resolve the problem.
If you are experiencing issue when using Visual Studio, please read Unable to connect to GitHub with Visual Studio.
The Git Credential Manager for Windows (GCM) provides secure Git credential storage for Windows. It’s the successor to the Windows Credential Store for Git (git-credential-winstore), which is no longer maintained. Compared to Git’s built-in credential storage for Windows (wincred), which provides single-factor authentication support working on any HTTP enabled Git repository, GCM provides multi-factor authentication support for Azure DevOps, Team Foundation Server, GitHub, and Bitbucket.
This project includes:
Community
This is a community project so feel free to contribute ideas, submit bugs, fix bugs, or code new features. For detailed information on how the GCM works go to the wiki.
Download and Install
To use the GCM, you can download the latest installer. To install, double-click GCMW-
When prompted to select your terminal emulator for Git Bash you should choose the Windows’ default console window, or make sure GCM is configured to use modal dialogs. GCM cannot prompt you for credentials, at the console, in a MinTTY setup.
Manual Installation
Note for users with special installation needs, you can still extract the gcm-
Installation in an MSYS2 Environment
To use the GCM along with git installed with pacman in an MSYS2 environment, simply download a release zip and extract the contents directly into C:\msys64\usr\lib\git-core (assuming your MSYS2 environment is installed in C:\msys64 ). Then run:
How to use
You don’t. It magically works when credentials are needed. For example, when pushing to Azure DevOps, it automatically opens a window and initializes an oauth2 flow to get your token.
Build and Install from Sources
Additional Resources
Contribute
There are many ways to contribute.
Code Contributions
For code contributions, you will need to complete a Contributor License Agreement (CLA). Briefly, this agreement testifies that you grant us permission to use the submitted change according to the terms of the project’s license, and that the work being submitted is under the appropriate copyright.
Please submit a Contributor License Agreement (CLA) before submitting a pull request. You may visit https://cla.microsoft.com to sign digitally. Alternatively, download the agreement Microsoft Contribution License Agreement.pdf, sign, scan, and email it back to cla@microsoft.com. Be sure to include your GitHub user name along with the agreement. Once we have received the signed CLA, we’ll review the request.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
License
This project uses the MIT License.
This project is maintained by microsoft
Hosted on GitHub Pages — Theme by orderedlist
Git-Credential-Manager-for-Windows
Secure Git credential storage for Windows with support for Visual Studio Team Services, GitHub, and Bitbucket multi-factor authentication.
Git Credential Manager for Windows
The Git Credential Manager for Windows (GCM) provides secure Git credential storage for Windows. GCM provides multi-factor authentication support for Azure DevOps, Team Foundation Server, GitHub, and BitBucket.
Usage
After installation, Git will use the Git Credential Manager for Windows and you will only need to interact with any authentication dialogs asking for credentials. The GCM stays invisible as much as possible, so ideally you’ll forget that you’re depending on GCM at all.
Assuming the GCM has been installed, using your favorite Windows console (Command Prompt, PowerShell, ConEmu, etc.), use the following command to interact directly with the GCM.
Commands
delete (deprecated)
Removes stored credentials for a given URL. Any future attempts to authenticate with the remote will require authentication steps to be completed again.
This method is being deprecated and users should use “git credential reject” instead
deploy [–path ] [–passive] [–force]
Deploys the Git Credential Manager for Windows package and sets Git configuration to use the helper.
deploy –path
Specifies a path ( ) for the installer to deploy to. If a path is provided, the installer will not seek additional Git installations to modify.
deploy –passive
Instructs the installer to not prompt the user for input during deployment and restricts output to error messages only.
deploy –force
Instructs the installer to proceed with deployment even if prerequisites are not met or errors are encountered.
remove [–path ] [–passive] [–force]
Removes the Git Credential Manager for Windows package and unsets Git configuration to no longer use the helper.
remove –path
Specifies a path ( ) for the installer to remove from. If a path is provided, the installer will not seek additional Git installations to modify.
remove –passive
Instructs the installer to not prompt the user for input during removal and restricts output to error messages only.
remove –force
Instructs the installer to proceed with removal even if prerequisites are not met or errors are encountered.
version
Displays the current version.
clear
Synonym for delete.
install
Synonym for deploy.
uninstall
Synonym for remove.
get / store / erase / fill / approve / reject
Commands for interaction with Git.
This project is maintained by microsoft
Hosted on GitHub Pages — Theme by orderedlist
Разработчики GitHub представили GCM Core – инструмент универсальной аутентификации для Git-серверов
Git Credential Manager Core – это кроссплатформенный инструмент, который может стать альтернативой традиционной HTTPS- или SSH-аутентификации для Git. Планируется, что в будущем он заменит существующие утилиты Git-аутентификации для Windows, macOS и Linux.
Зачем нужен GCM Core
Разработчики проходят процедуру аутентификации несколько раз в день, особенно если развивают не один проект. Когда вы создаете код совместно с коллегами и используете GitHub для хранения репозиториев, аутентификация позволяет подтвердить, что у вас есть права на обновление ветки с помощью git push. Она же нужна, чтобы получить разрешение на чтение кода в закрытых коммерческих проектах во время выполнения команд git fetch или git pull.
При этом GCM Core призван упростить аутентификацию на Git-серверах, но не потерять в безопасности, поскольку реализует более надежные алгоритмы аутентификации, чем те, что используются популярными утилитами аутентификации сейчас.
На данный момент в системе контроля версий Git доступно два механизма аутентификации для доступа к удаленным компьютерам:
В отличие от популярных утилит вроде wincred, osxkeychain и gnome-keyring поддерживающих только однофакторную аутентификацию по HTTP, протокол GCM Core умеет работать с двухфакторной аутентификацией.
Двухфакторная аутентификация поддерживается в GCM Core не только для GitHub, но и, к примеру, для Bitbucket, DevOps Azure и Azure DevOps Server (ранее этот продукт назывался Team Foundation Server).
Где загрузить
GCM Core уже доступен для Windows и macOS. В будущем появится и поддержка Linux, но пока конкретных сроков разработчики не называют.
В репозитории GitHub можно загрузить версию GCM Core для предварительного ознакомления. Если в ваших проектах действуют повышенные требования к безопасности, разработчики рекомендуют продолжать использовать традиционную аутентификацию по протоколу SSH.
В Windows для двухфакторной аутентификации доступен традиционный графический интерфейс. После того, как вы впервые пройдете аутентификацию, система создаст токен и сохранит его в диспетчере учетных данных Windows.
В следующую версию инсталлера Git для Windows обещают включить GCM Core как экспериментальную опцию. Со временем утилита будет устанавливаться по умолчанию. Она заменит Git Credential Manager для Windows и сможет подхватить учетные записи, которые были настроены ранее.
Отметим также, что на GitHub недавно объединили документацию. Теперь официальные мануалы доступны на едином портале.
How the Git Credential Managers works
Clone this wiki locally
The Git Credential Manager for Windows (GCM) is a credential helper for Git. It securely stores your credentials in the Windows Credential Manager so you only need to enter them once for each remote repo you access. All future Git commands will reuse the existing credentials. The following flows explain how Git HTTPS authentication works with and without the GCM.
Git HTTPS authentication with the GCM
Visual Studio Team Services authentication
The experience for Team Services is the same as other Git remotes except a dialog asks for your Microsoft Account or Azure Active Directory credentials the first time you authenticate to a Team Services remote repo. A mutli-factor authentication experience will be shown if it’s configured. After that, authentication uses a Team Services personal access token to silently authenticate. If you’ve already authenticated to Team Services using Visual Studio, we’ll silently use those credentials for Git on the command prompt so you aren’t prompted.
Git HTTPS authentication with the GCM to a Team Services remote repo
GitHub 2-factor authentication
GitHub authentication without 2-factor will go through the standard GCM flow. If you have 2-factor, you’re asked to enter your passcode on the command line after you enter your username and password.
Git HTTPS authentication with the GCM to a GitHub remote repo and 2-factor authentication enabled on your GitHub accounts
Как отключить Git Credential Manager для Windows?
Я заметил, что в последней версии Git по умолчанию теперь всплывает диалоговое окно «Диспетчер учетных данных Git для Windows» вместо того, чтобы каждый раз запрашивать пароль в командной строке Bash.
Я действительно ненавижу такое поведение. Как я могу просто отключить его и каждый раз возвращаться к вводу пароля в оболочке Bash?
15 ответов
Чтобы отключить всплывающее окно учетных данных OpenSSH.
Мне удалось удалить Git Credential Manager для Windows с помощью опции удаления:
Выполните эту команду в C:\Program Files\Git\mingw64\libexec\git-core
Другой вариант, который мне пришлось использовать с VSTS:
У меня не получилось:
Я увидел этот след после того, как запустил:
Также я добавил имя пользователя Git:
В конце концов я ввел эту команду:
Я проверил все настройки, которые добавляю выше:
После этих настроек я тоже получил электронное письмо с сообщением:
У меня была эта проблема, и я удалил только файл git-credential-manager.exe из:
Таким образом, сценарий всегда видит «правильную» настройку без запроса без необходимости адаптации какой-либо конфигурации.
(Git для Windows 2.13.3)
Таким образом, вы можете использовать GCMfW, но он никогда вас не попросит; он просто будет искать учетные данные, что может быть очень полезно в неинтерактивной среде.
Это работает в системах Windows. Я протестировал его, и он у меня сработал.
Перейдите в Инструменты → Параметры
Снимите флажок «Проверять пульты по умолчанию на наличие обновлений каждые [10] минут».
Довольно старая тема, но, возможно, это поможет тем, кто ищет проблему, когда приведенные выше советы не решают ее.
Также не забудьте запустить Git от имени администратора! В противном случае файл не будет сохранен (в моем случае).
В папке «user» c: // user найдите файл «.gitconfig», затем удалите строку http и прокси.
Вы можете просто удалить Credential Manager.
Если вы заметили, что пользовательский интерфейс диспетчера учетных данных появляется при использовании IDE JetBrains (например, IntelliJ IDEA, PhpStorm, WebStorm, PyCharm, Rider, RubyMine, Android Studio или Goland), сделайте следующее:
Отключите Использовать помощник по учетным данным :