LinuxCommandLibrary

git-credential-store

Store Git credentials on disk

TLDR

Store Git credentials in a specific file

$ git config credential.helper 'store --file=[path/to/file]'
copy

SYNOPSIS

git-credential-store [--file=<path>] [--scope=<name>]

PARAMETERS

--file=<path>
    Path to store credentials (default: $HOME/.git-credentials)

--scope=<name>
    Scope identifier for credentials (default: current repository)

DESCRIPTION

The git-credential-store is a simple Git credential helper that securely stores HTTP and HTTPS usernames and passwords indefinitely on disk for use by Git during repository operations.

It appends credentials to a plain-text file in the format protocol://username@host or with password protocol://username:password@host. When Git requests credentials via the get operation, it searches the file and outputs matching entries. For erase, it removes matching lines.

Invoke it by configuring Git with git config credential.helper store, optionally specifying --file and --scope. Input is provided via stdin in the credential protocol format, e.g., protocol=https host=github.com username=user password=pass.

This helper is ideal for non-interactive environments but poses security risks due to unencrypted storage. Use on trusted systems only.

CAVEATS

Security warning: Stores credentials unencrypted in plain text. Accessible to anyone with file permissions. Avoid on shared or untrusted machines.

FILE FORMAT

Each line: https://user:pass@example.com
Or without password for username-only.

ENABLE USAGE

git config --global credential.helper store
Git will automatically use it for credential prompts.

HISTORY

Introduced in Git 1.6.6 (October 2008) as a basic, filesystem-based credential backend. Remains popular for simplicity despite security limitations; enhanced in later versions with scoped support.

SEE ALSO

git-credential-cache(1), gitcredentials(7), git-config(1)

Copied to clipboard