Skip to content

Latest commit

 

History

History
148 lines (104 loc) · 5.91 KB

github-apideprecation.md

File metadata and controls

148 lines (104 loc) · 5.91 KB

GitHub Authentication Deprecation

What's going on?

GitHub now requires token-based authentication to call their APIs, and in the future, use Git itself.

This means Git credential helpers such as Git Credential Manager (GCM) for Windows, and old versions of GCM that offer username/password flows will not be able to create new access tokens for accessing Git repositories.

If you already have tokens generated by Git credential helpers like GCM for Windows, they will continue to work until they expire or are revoked/deleted.

What should I do now?

Windows command-line users

The best thing to do right now is upgrade to the latest Git for Windows (at least version 2.29), which includes a version of Git Credential Manager that uses supported OAuth token-based authentication.

Download the latest Git for Windows ⬇️

Visual Studio users

Please update to the latest supported release of Visual Studio, that includes GCM and support for OAuth token-based authentication.

SSH, macOS, and Linux users

If you are using SSH this change does not affect you.

If you are using an older version of Git Credential Manager (before 2.0.124-beta) please upgrade to the latest version following these instructions.

What if I cannot upgrade Git for Windows?

If you are unable to upgrade Git for Windows, you can manually install Git Credential Manager as a standalone install. This will override the older, GCM for Windows bundled with the Git for Windows installation.

Download Git Credential Manager standalone ⬇️

What if I cannot use Git Credential Manager?

If you are unable to use Git Credential Manager due to a bug or compatibility issue we'd like to know why!

Help! I cannot make any changes to my Windows machine without an Administrator

If you do not have permission to change your installation (for example in a corporate environment) you can use the per-user installer. Check out the latest release and download the gcmcoreuser-win-*.exe executable.

Help! I still cannot or don't want to install anything

There is a workaround which should work and doesn't require installing anything.

  1. Tell your system administrator they should start planning to upgrade the installed version of Git for Windows to at least 2.29! 😁

  2. Create a new personal access token (see official documentation)

  3. Enter a name ("note") for the token and ensure the repo, gist, and workflow scopes are selected: image ... image ... image ... image

  4. Click "Generate Token"

    image

  5. [IMPORTANT] Keep the resulting page open as this contains your new token (this will only be displayed once!)

    image

  6. Save the generated PAT in the Windows Credential Manager:

    1. If you prefer to use the command-line, open a command prompt (cmd.exe) and type the following:

      cmdkey /generic:git:https://github.com /user:PersonalAccessToken /pass

      You will be prompted to enter a password – copy the newly generated PAT in step 4 and paste it here, and press the Enter key

      image

    2. If you do not wish to use the command-line, open the Credential Manager via Control Panel and select the "Windows Credentials" tab.

      image

      Click "Add a generic credential", and enter the following details:

      • Internet or network address: git:https://github.com
      • Username: PersonalAccessToken
      • Password: (copy and paste the PAT generated in step 4 here)

      image

What about GitHub Enterprise Server (GHES)?

As mentioned in the blog post, the new token-based authentication requirements DO NOT apply to GHES:

We have not announced any changes to GitHub Enterprise Server, which remains unaffected at this time.