Scroll to navigation



git-credential-cache - Helper to temporarily store passwords in memory


git config credential.helper 'cache [<options>]'


This command caches credentials for use by future Git programs. The stored credentials are kept in memory of the cache-daemon process (instead of being written to a file) and are forgotten after a configurable timeout. Credentials are forgotten sooner if the cache-daemon dies, for example if the system restarts. The cache is accessible over a Unix domain socket, restricted to the current user by filesystem permissions.

You probably don’t want to invoke this command directly; it is meant to be used as a credential helper by other parts of Git. See gitcredentials(7) or EXAMPLES below.


--timeout <seconds>

Number of seconds to cache credentials (default: 900).

--socket <path>

Use <path> to contact a running cache daemon (or start a new cache daemon if one is not started). Defaults to $XDG_CACHE_HOME/git/credential/socket unless ~/.git-credential-cache/ exists in which case ~/.git-credential-cache/socket is used instead. If your home directory is on a network-mounted filesystem, you may need to change this to a local filesystem. You must specify an absolute path.


If you would like the daemon to exit early, forgetting all cached credentials before their timeout, you can issue an exit action:

git credential-cache exit


The point of this helper is to reduce the number of times you must type your username or password. For example:

$ git config credential.helper cache
$ git push
Username: <type your username>
Password: <type your password>
[work for 5 more minutes]
$ git push
[your credentials are used automatically]

You can provide options via the credential.helper configuration variable (this example increases the cache time to 1 hour):

$ git config credential.helper 'cache --timeout=3600'


Part of the git(1) suite

05/31/2024 Git 2.45.2