...
Some of the Skara tools requires a "Personal Access Token" (PAT) to authenticate against an external Git source code hosting provider's API. These tools includeA PAT is a like a password that has limited capabilities, it can only be used to successfully authenticate and perform certain limited actions. The following Skara tools requires a PAT:
- git-fork
- git-pr
- git-token
If you do not intend to use the above tools, then there is no need to set up a PAT and you can skip this section. If you want to make use of the above tools, then please read on.
Git Credential Manager
The first step is to ensure you have a Git credential manager to store your PAT once it has been generated. See the subsections below for how to set up a Git credential manager for you operating system.
Windows
To set up and store a person access token, please see the follow the instructions in one of the following sections depending on your operating system and environment.
Windows
Git Credential Manager for Windows
To store the personal access token you are about to generate you need a Git credential manager. If you installed Git via https:If you installed Git via https://gitforwindows.org/ then (recommended) then you already have a credential manager from Microsoft installed (it is bundled with "Git for Windows"). If you installed Git via some other mechanism, then you must first install https://github.com/Microsoft/Git-Credential-Manager-for-Windows.
macOS
You already have a Git credential manager in Keychain, there is nothing to install or configure.
GNU/Linux
GNOME
On GNU/Linux the recommended setup is to use libsecret and the "libsecret credential helper" in order to use GNOME Keyring as the Git credential manager. If you are using a desktop environment or distribution without support for GNOME Keyring, please see the Other section.
Fedora
Fedora 29 and 30 (the only two currently supported versions of Fedora) comes with libsecret and GNOME Keyring installed by default. When you install the git package you also get the libsecret credential helper installed. To configure git to use the libsecret credential helper run:
Code Block | ||
---|---|---|
| ||
$ git config --global credential.helper /usr/libexec/git-core/git-credential-libsecret |
If you want to have a graphical utility to inspect the GNOME Keyring we recommend that you install GNOME Seahorse:
Code Block | ||
---|---|---|
| ||
sudo dnf install seahorse |
Ubuntu
Generating a Personal Access Token
To generate a a Personal Access Token on GitHub go to https://github.com/settings/tokens and and click on "Generate new token". You only need to select the "repo" scope (permission). After you have generated your token, store it in the Git Credential Manager for Windows using git token store:
Code Block | ||
---|---|---|
| ||
> git token store https://github.com
Username: <insert your Github username>
Password: <insert your "Personal Access Token", not your GitHub password> |
macOS
To generate a a Personal Access Token on GitHub go to https://github.com/settings/tokens and and click on "Generate new token". You only need to select the "repo" scope (permission). After you have generated your token, store it in Keychain using git token store:
Code Block | ||
---|---|---|
| ||
$ git token store https://github.com
Username: <insert your Github username>
Password: <insert your "Personal Access Token", not your GitHub password> |
GNU/Linux
On GNU/Linux the way you will store the personal access token you are about to generate depends on your desktop environment. If you are using the a desktop environment with support for the GNOME Keyring, then follow the instructions in the GNOME section. If you are using GNU/Linux installation without a desktop environment or with a desktop environment that does not support the GNOME Keyring, see the Other section for instructions.
GNOME
On GNU/Linux the recommended setup is to use libsecret and the "libsecret credential helper" in order to use GNOME Keyring as the Git credential manager. Please follow the instructions for setting up libsecret for the GNU/Linux distribution you are using, then proceed to generate a personal access token.
Fedora
Fedora 29 and 30 comes with libsecret and GNOME Keyring installed by default. When you install the git package you also get the libsecret credential helper installed. To configure git to use the libsecret credential helper run:
Code Block | ||
---|---|---|
| ||
$ git config --global credential.helper /usr/libexec/git-core/git-credential-libsecret |
If you want to have a graphical utility to inspect the GNOME Keyring we recommend that you install GNOME Seahorse:
Code Block | ||
---|---|---|
| ||
sudo dnf install seahorse |
Ubuntu
Ubuntu 19.04 and 18.04.2 (LTS) comes with libsecret and GNOME Keyring installed by default. Unfortunately even if you install the Git package you will not get a binary version of the libsecret credential helper installed (you only get the source). This means you have to compile the libsecret credential helper yourself. This is easy to do, it just requires two extra commands:
Code Block | ||
---|---|---|
| ||
$ sudo apt install libsecret-1-dev
$ sudo make --directory=/usr/share/doc/git/contrib/credential/libsecret |
Once you have compiled the libsecret credential helper you must configure Git to use itUbuntu 19.04 and 18.04.2 (LTS) (the only two currently supported versions of desktop Ubuntu) comes with libsecret and GNOME Keyring installed by default. Unfortunately even if you install the Git package you will not get a binary version of the libsecret credential helper installed (you only get the source). This means you have to compile the libsecret credential helper yourself. This is easy to do, it just requires two extra commands:
Code Block | ||
---|---|---|
| ||
$ git sudoconfig apt install libsecret-1-dev --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret |
If you want to have a graphical utility to inspect the GNOME Keyring we recommend that you install GNOME Seahorse:
Code Block | ||
---|---|---|
| ||
$ sudo make --directory=/usr/share/doc/git/contrib/credential/libsecret |
Once you have compiled the libsecret credential helper you must configure Git to use it:
Code Block | ||
---|---|---|
| ||
$ git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret |
If you want to have a graphical utility to inspect the GNOME Keyring we recommend that you install GNOME Seahorse:
...
language | bash |
---|
apt install seahorse |
Generating a personal access token
To generate a a Personal Access Token on GitHub go to https://github.com/settings/tokens and and click on "Generate new token". You only need to select the "repo" scope (permission). After you have generated your token, store it in the GNOME Keyring using git token store:
...
Other
If you are using a desktop environment or distribution without support for GNOME Keyring, or if you want to use your own scheme for storing the PAT, then that is also supported. You can store non-sensitive data such as your username and the URL of the Git source code hosting provider in your ~/.gitconfig
file in the "credential" section:
...