| git-credential-cache(1) | |
| ======================= | |
| NAME | |
| ---- | |
| git-credential-cache - Helper to temporarily store passwords in memory | |
| SYNOPSIS | |
| -------- | |
| ----------------------------- | |
| git config credential.helper 'cache [<options>]' | |
| ----------------------------- | |
| DESCRIPTION | |
| ----------- | |
| 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 | |
| linkgit:gitcredentials[7] or `EXAMPLES` below. | |
| OPTIONS | |
| ------- | |
| --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. | |
| CONTROLLING THE DAEMON | |
| ---------------------- | |
| 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 | |
| -------------------------------------- | |
| EXAMPLES | |
| -------- | |
| 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 http://example.com/repo.git | |
| Username: <type your username> | |
| Password: <type your password> | |
| [work for 5 more minutes] | |
| $ git push http://example.com/repo.git | |
| [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' | |
| ------------------------------------------------------- | |
| PERSONAL ACCESS TOKENS | |
| ---------------------- | |
| Some remotes accept personal access tokens, which are randomly | |
| generated and hard to memorise. They typically have a lifetime of weeks | |
| or months. | |
| git-credential-cache is inherently unsuitable for persistent storage of | |
| personal access tokens. The credential will be forgotten after the cache | |
| timeout. Even if you configure a long timeout, credentials will be | |
| forgotten if the daemon dies. | |
| To avoid frequently regenerating personal access tokens, configure a | |
| credential helper with persistent storage. Alternatively, configure an | |
| OAuth credential helper to generate credentials automatically. See | |
| linkgit:gitcredentials[7], sections "Available helpers" and "OAuth". | |
| GIT | |
| --- | |
| Part of the linkgit:git[1] suite |