Skip to content

Updating your login to a GitHub token

goldy edited this page Aug 16, 2021 · 2 revisions

If you have been denied access to push to a GitHub repo, note that the old password system has been deprecated and no longer works. If you do not make changes, you will no longer be able to work with GitHub on personal forks and private repos.

If you only ever git clone from public repositories like ESCOMP and ESMCI, you may ignore the rest of this wiki page.

If you've already created and are using a GitHub token, you may ignore the rest of this wiki page.

GitHub will soon be requiring that you use a GitHub generated token (basically a long password that they autogenerate for you).

  1. If you are on a Mac and do not need to use your password, but still receive an error message, you may have stored your password in the keychain. To remove a password on Macs: https://docs.github.com/en/github/getting-started-with-github/getting-started-with-git/updating-credentials-from-the-macos-keychain
  2. Create a GitHub password token. Make sure you copy it to a safe place as they only show it to you once.
  3. Store your credentials on every machine you use GitHub on.
  •     On a private / secure Linux system:
    git config --global credential.helper store
  •     Note that the store option to git's credential helper stores your GitHub token in plain text. If you are on a public machine, you should store your GitHub token in a password manager and use the credential cache mechanism to open command-line access to your GitHub repositories:
    git config --global credential.helper cache --timeout <seconds>
  •     where <seconds> is the number of seconds git 'remembers' your token. For example, to only have to enter your token once per day:
    git config --global credential.helper cache --timeout 86400
  •     On Windows:
    git config --global credential.helper wincred
  1. On each machine, do a git clone of your personal repo. It will ask for your username and password. The password needs to be your saved token. You should only need to do this once.

  2. To test that your credentials are successfully cached, do a new git clone of your personal repo. If it clones without asking for your username/password you are done.