about summary refs log tree commit diff
path: root/third_party/git/Documentation/git-credential-cache.txt
blob: 0216c18ef80c9a9d32095ec3969091aff1c20344 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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 in memory for use by future Git
programs. The stored credentials never touch the disk, and are forgotten
after a configurable timeout.  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 drops the cache time to 5 minutes):

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

GIT
---
Part of the linkgit:git[1] suite