Scroll to navigation

glab(1) glab(1)

NAME

glab-auth-login - Authenticate with a GitLab instance.

SYNOPSIS

glab auth login [flags]

DESCRIPTION

Authenticate with a GitLab instance. You can pass in a token on standard input by using --stdin. The minimum required scopes for the token are: api, write_repository. Configuration and credentials are stored in the global configuration file (default ~/.config/glab-cli/config.yml)

When running in interactive mode inside a Git repository, glab will automatically detect GitLab instances from your Git remotes and present them as options, saving you from having to manually type the hostname.

OPTIONS

-a, --api-host="" API host url.

-p, --api-protocol="" API protocol: https, http

-g, --git-protocol="" Git protocol: ssh, https, http

--hostname="" The hostname of the GitLab instance to authenticate with.

-j, --job-token="" CI job token.

--stdin[=false] Read token from standard input.

-t, --token="" Your GitLab access token.

--use-keyring[=false] Store token in your operating system's keyring.

OPTIONS INHERITED FROM PARENT COMMANDS

-h, --help[=false] Show help for this command.

EXAMPLE

# Start interactive setup
# (If in a Git repository, glab will detect and suggest GitLab instances from remotes)
$ glab auth login
# Authenticate against `gitlab.com` by reading the token from a file
$ glab auth login --stdin < myaccesstoken.txt
# Authenticate with GitLab Self-Managed or GitLab Dedicated
$ glab auth login --hostname salsa.debian.org
# Non-interactive setup
$ glab auth login --hostname gitlab.example.org --token glpat-xxx --api-host gitlab.example.org:3443 --api-protocol https --git-protocol ssh
# Non-interactive setup reading token from a file
$ glab auth login --hostname gitlab.example.org --api-host gitlab.example.org:3443 --api-protocol https --git-protocol ssh  --stdin < myaccesstoken.txt
# Non-interactive CI/CD setup
$ glab auth login --hostname $CI_SERVER_HOST --job-token $CI_JOB_TOKEN

SEE ALSO

glab-auth(1)

Dec 2025 Auto generated by spf13/cobra