archive: handle commits with an empty tree
[git/jnareb-git.git] / Documentation / git-credential-store.txt
blobb27c03c361111a01dbc5c2407c209e5f8530eec2
1 git-credential-store(1)
2 =======================
4 NAME
5 ----
6 git-credential-store - Helper to store credentials on disk
8 SYNOPSIS
9 --------
10 -------------------
11 git config credential.helper 'store [options]'
12 -------------------
14 DESCRIPTION
15 -----------
17 NOTE: Using this helper will store your passwords unencrypted on disk,
18 protected only by filesystem permissions. If this is not an acceptable
19 security tradeoff, try linkgit:git-credential-cache[1], or find a helper
20 that integrates with secure storage provided by your operating system.
22 This command stores credentials indefinitely on disk for use by future
23 git programs.
25 You probably don't want to invoke this command directly; it is meant to
26 be used as a credential helper by other parts of git. See
27 linkgit:gitcredentials[7] or `EXAMPLES` below.
29 OPTIONS
30 -------
32 --store=<path>::
34         Use `<path>` to store credentials. The file will have its
35         filesystem permissions set to prevent other users on the system
36         from reading it, but will not be encrypted or otherwise
37         protected. Defaults to `~/.git-credentials`.
39 EXAMPLES
40 --------
42 The point of this helper is to reduce the number of times you must type
43 your username or password. For example:
45 ------------------------------------------
46 $ git config credential.helper store
47 $ git push http://example.com/repo.git
48 Username: <type your username>
49 Password: <type your password>
51 [several days later]
52 $ git push http://example.com/repo.git
53 [your credentials are used automatically]
54 ------------------------------------------
56 STORAGE FORMAT
57 --------------
59 The `.git-credentials` file is stored in plaintext. Each credential is
60 stored on its own line as a URL like:
62 ------------------------------
63 https://user:pass@example.com
64 ------------------------------
66 When git needs authentication for a particular URL context,
67 credential-store will consider that context a pattern to match against
68 each entry in the credentials file.  If the protocol, hostname, and
69 username (if we already have one) match, then the password is returned
70 to git. See the discussion of configuration in linkgit:gitcredentials[7]
71 for more information.
73 GIT
74 ---
75 Part of the linkgit:git[1] suite