Skip to content

Signing In to Remotes

Garrett Speager edited this page Oct 2, 2026 · 1 revision

Signing In to Remotes

Current Client signs in to remotes the same way Git does. It doesn't have accounts of its own, and it never stores your passwords or tokens — that's left to Git's credential helpers and your SSH agent.

When you'll be asked to sign in

Current Client 0.1.1 and later.

If you clone, fetch, pull, or push to an HTTPS remote and Git has no saved credentials for it, a Sign in to remote form appears with two fields: Username and Password or token. Fill them in and the operation runs again with them.

  • If the remote turns them down, the form comes back so you can try again. A rejected sign-in usually means the host wants an access token rather than your password (see below).
  • Cancel stops the operation and shows the original error.
  • Background fetching never asks — it waits until you sync yourself.

In 0.1.0 there's no form: set up a credential helper first, or sign in once from a terminal as described under Without the sign-in form.

Password or access token?

Many hosts no longer accept your account password for Git. Use a personal access token in the "Password or token" field instead:

Host What to use
GitHub Always a personal access token. GitHub stopped accepting account passwords for Git in 2021.
GitLab.com A personal access token if you use two-factor authentication or sign in with Google, GitHub or single sign-on. Otherwise your password works.
Self-hosted GitLab Your password (or your company directory password, if the server uses LDAP) usually works — unless you use two-factor authentication, sign in through single sign-on, or your administrator has turned off password sign-in for Git. In those cases, use a personal access token.
Bitbucket Cloud An API token, not your Atlassian password. Bitbucket's documentation explains which username to pair it with.
Gitea / Forgejo Your password works unless two-factor authentication is on; then use an access token.

If you're not sure, a token always works.

Creating a token

  • GitHub: your profile picture → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token. Choose the repositories it can reach, and under Repository permissions set Contents to Read and write. Enter your GitHub username with the token.
    • A classic token works too; give it the repo scope. If your organization uses single sign-on, click Configure SSO next to the token and authorize it for that organization.
  • GitLab (GitLab.com or your own server): your avatar → Edit profile → Access tokens → Add new token, with the read_repository and write_repository scopes. Enter your GitLab username with the token.
  • Gitea / Forgejo: Settings → Applications → Generate token, with read and write access to repositories.

Tokens can expire. When one does, the remote rejects it, Git forgets it, and you're asked to sign in again — just create a new token and enter that.

Will Git remember it?

After a successful sign-in, Git hands the credentials to its credential helper, which saves them so you aren't asked again. The form tells you which case applies:

  • "Git saves this with its … credential helper" — a helper is set up. On macOS that's usually osxkeychain (your login keychain); on Windows it's Git Credential Manager.
  • "No Git credential helper is set up" — the credentials are used for that one operation and then forgotten, so you'll be asked again next time. This is common on Linux. Installing Git Credential Manager fixes it, or see Git's credential storage chapter for other options.

Git Credential Manager

With Git Credential Manager installed, you'll usually never see the sign-in form: Git Credential Manager opens its own window — often a browser sign-in for GitHub, GitLab, Bitbucket and Azure DevOps — and creates and stores a token for you. It ships with Git for Windows, and on macOS you can install it with brew install --cask git-credential-manager.

Removing a saved sign-in

  • macOS: open Keychain Access and search for the host name (for example github.com), then delete the entry.
  • Windows: open Credential Manager → Windows Credentials and remove the git:https://… entry.
  • Any platform, from a terminal:
    printf "protocol=https\nhost=github.com\n\n" | git credential reject
    

Without the sign-in form

In Current Client 0.1.0, or if you'd rather set things up once ahead of time, sign in from a terminal and let your credential helper save it:

git ls-remote https://github.com/OWNER/REPO.git

Git asks for your username and password — enter your token as the password. If a credential helper is set up, it's saved, and Current Client uses it from then on.

SSH instead of HTTPS

If you use SSH remote URLs (git@github.com:owner/repo.git), there's no username or token to enter. Load your key into your SSH agent, and connect to a new host once from a terminal so it's added to known_hosts. Current Client can't answer SSH passphrase or host-key prompts itself, so it explains what to do if one is needed.

Clone this wiki locally