1 branch --abbrev[=<n>] use <n> digits to display SHA-1s
2 merge --abort abort the current in-progress merge
3 fetch --all fetch from all remotes
4 push --all push all refs
5 grep --all-match show only matches from files that match all patterns
6 commit --allow-empty ok to record an empty change
7 commit --allow-empty-message ok to record a change with an empty message
8 commit --amend amend previous commit
9 grep --and combine patterns specified with -e
10 commit --author <AUTHOR> override author for commit
11 clone --bare create a bare repository
12 init --bare create a bare repository
13 commit --branch show branch information
14 grep --cached search in index instead of in the work tree
15 rm --cached only remove from the index
16 commit --cleanup <default> how to strip spaces and #comments from message
17 branch --color[=<when>] use colored output
18 grep --color[=<when>] highlight matches
19 merge --commit perform a commit if the merge succeeds (default)
20 checkout--conflict <style> conflict style (merge or diff3)
21 branch --contains <commit> print only branches that contain the commit
22 tag --contains <commit> print only tags that contain the commit
23 commit --date <DATE> override date for commit
24 push --delete delete refs
25 clone --depth <depth> create a shallow clone of that depth
26 fetch --depth <DEPTH> deepen history of shallow clone
27 commit --dry-run show what would be committed
28 fetch --dry-run dry run
29 push --exec <receive-pack> receive pack program
30 grep --ext-grep allow calling of grep(1) (ignored by this build)
31 merge --ff allow fast-forward (default)
32 merge --ff-only abort if fast-forward is not possible
33 commit --fixup <COMMIT> use autosquash formatted message to fixup specified commit
34 grep --full-name show filenames relative to top directory
35 checkout--guess second guess 'git checkout no-such-branch'
36 reset --hard reset HEAD, index and working tree
37 add --ignore-errors just skip files which cannot be added because of errors
38 add --ignore-missing check if - even missing - files are ignored in dry run
39 status --ignore-submodules[=<when>] ignore changes to submodules, optional when: all, dirty, untracked
40 rm --ignore-unmatch exit with a zero status even if nothing matched
41 status --ignored show ignored files
42 grep --index --no-index finds in contents not managed by git
43 commit --interactive interactively add files
44 reset --keep reset HEAD but keep local changes
45 merge --log[=<n>] add (at most <n>) entries from shortlog to merge commit message
46 grep --max-depth <depth> descend at most <depth> levels
47 reset --merge reset HEAD, index and working tree
48 branch --merged <commit> print only merged branches
49 clone --mirror create a mirror repository (implies bare)
50 push --mirror mirror all refs
51 reset --mixed reset HEAD and index
52 clone --naked create a bare repository
53 grep --name-only synonym for --files-with-matches
54 clone --no-hardlinks don't use local hardlinks, always copy
55 branch --no-merged <commit> print only not merged branches
56 commit --no-post-rewrite bypass post-rewrite hook
59 checkout--orphan <new branch> new unparented branch
60 commit --porcelain show porcelain output format
61 push --porcelain machine-readable output
62 status --porcelain show porcelain output format
63 clone --progress force progress reporting
64 fetch --progress force progress reporting
65 push --progress force progress reporting
66 push --receive-pack <receive-pack> receive pack program
67 clone --recurse-submodules initialize submodules in the clone
68 fetch --recurse-submodules control recursive fetching of submodules
69 clone --recursive initialize submodules in the clone
70 clone --reference <repo> reference repository
71 add --refresh don't add, only refresh the index
72 push --repo <repository> repository
73 merge --rerere-autoupdate update the index with reused conflict resolution if possible
74 commit --reset-author the commit is authored by me now (used with -C-c/--amend)
75 branch --set-upstream change upstream info
76 init --shared[=<permissions>] specify that the git repository is to be shared amongst several us
77 commit --short show status concisely
78 reset --soft reset only HEAD
79 merge --squash create a single commit instead of doing a merge
80 commit --squash <COMMIT> use autosquash formatted message to squash specified commit
81 merge --stat show a diffstat at the end of the merge
82 commit --status include status in commit message template
83 fetch --submodule-prefix <DIR> prepend this to submodule path output
84 merge --summary (synonym to --stat)
85 push --tags push tags (can't be used with --all or --mirror)
86 clone --template <path> path the template repository
87 init --template <template-directory>provide the directory from which templates will be used
88 push --thin use thin pack
89 fetch --upload-pack <PATH> path to upload pack on remote end
90 branch --with <commit> print only branches that contain the commit
91 checkout-2, --ours checkout our version for unmerged files
92 checkout-3, --theirs checkout their version for unmerged files
93 branch -a list both remote-tracking and local branches
94 tag -a annotated tag, needs a message
95 grep -A <n> show <n> context lines after matches
96 add -A, --all add all, noticing removal of tracked files
97 commit -a, --all commit all changed files
98 fetch -a, --append append to .git/FETCH_HEAD instead of overwriting
99 grep -a, --text process binary files as text
100 checkout-b <branch> create and checkout a new branch
101 checkout-B <branch> create/reset and checkout a branch
102 grep -B <n> show <n> context lines before matches
103 status -b, --branch show branch information
104 clone -b, --branch <branch> checkout <branch> instead of the remote's HEAD
105 grep -C <n> show <n> context lines before and after matches
106 grep -c, --count show the number of matches instead of matching lines
107 commit -c, --reedit-message <COMMIT> reuse and edit message from specified commit
108 commit -C, --reuse-message <COMMIT> reuse message from specified commit
109 branch -D delete branch (even if not merged)
110 branch -d delete fully merged branch
112 grep -e <pattern> match <pattern>
113 add -e, --edit edit current diff and apply
114 commit -e, --edit force edit of commit
115 grep -E, --extended-regexp use extended POSIX regular expressions
116 grep -f <file> read patterns from file
117 tag -F <FILE> message in a file
118 commit -F, --file <FILE> read log from file
119 grep -F, --fixed-strings interpret patterns as fixed strings
120 add -f, --force allow adding otherwise ignored files
121 branch -f, --force force creation (when already exists)
122 checkout-f, --force force checkout (throw away local modifications)
123 fetch -f, --force force overwrite of local branch
124 mv -f, --force force move/rename even if target exists
125 push -f, --force force updates
126 rm -f, --force override the up-to-date check
127 tag -f, --force replace the tag if exists
128 grep -G, --basic-regexp use basic POSIX regular expressions (default)
129 grep -h don't show filenames
130 grep -H show filenames
131 grep -I don't match patterns in binary files
132 grep -i, --ignore-case case insensitive matching
133 commit -i, --include add specified files to index for commit
134 add -i, --interactive interactive picking
135 mv -k skip move/rename errors
136 fetch -k, --keep keep downloaded pack
137 branch -l create the branch's reflog
138 checkout-l create reflog for new branch
139 tag -l list tag names
140 grep -l, --files-with-matches show only filenames instead of matching lines
141 grep -L, --files-without-match show only the names of files without match
142 clone -l, --local to clone from a local repository
143 branch -m move/rename a branch and its reflog
144 branch -M move/rename a branch, even if target exists
145 tag -m <msg> message for the tag
146 checkout-m, --merge perform a 3-way merge with the new branch
147 commit -m, --message <MESSAGE> specify commit message
148 merge -m, --message <message> message to be used for the merge commit (if any)
149 fetch -m, --multiple fetch from multiple remotes
150 fetch -n do not fetch all tags (--no-tags)
151 grep -n show line numbers
152 merge -n do not show a diffstat at the end of the merge
153 add -n, --dry-run dry run
154 mv -n, --dry-run dry run
155 push -n, --dry-run dry run
156 rm -n, --dry-run dry run
157 add -N, --intent-to-add record only the fact that the path will be added later
158 clone -n, --no-checkout don't create a checkout
159 commit -n, --no-verify bypass pre-commit hook
160 tag -n[<n>] print <n> lines of each tag message
161 grep -NUM shortcut for -C NUM
162 commit -o, --only commit only specified files
163 grep -O, --open-files-in-pager[=<pagshow matching files in the pager
164 clone -o, --origin <branch> use <branch> instead of 'origin' to track upstream
165 add -p, --patch interactive patching
166 checkout-p, --patch select hunks interactively
167 reset -p, --patch select hunks interactively
168 fetch -p, --prune prune remote-tracking branches no longer on remote
169 grep -p, --show-function show a line with the function name before matches
170 checkout-q, --quiet suppress progress reporting
171 clone -q, --quiet be more quiet
172 commit -q, --quiet suppress summary after successful commit
173 fetch -q, --quiet be more quiet
174 grep -q, --quiet indicate hit with exit status without output
175 init -q, --quiet be quiet
176 merge -q, --quiet be more quiet
177 push -q, --quiet be more quiet
178 reset -q, --quiet be quiet, only report errors
179 rm -q, --quiet do not list removed files
180 branch -r act on remote-tracking branches
181 rm -r allow recursive removal
182 tag -s annotated and GPG-signed tag
183 clone -s, --shared setup as shared repository
184 status -s, --short show status concisely
185 commit -s, --signoff add Signed-off-by:
186 merge -s, --strategy <strategy> merge strategy to use
187 fetch -t, --tags fetch all tags and associated objects
188 commit -t, --template <FILE> use specified template file
189 branch -t, --track set up tracking mode (see git-pull(1))
190 checkout-t, --track set upstream info for new branch
191 tag -u <key-id> use another key to sign the tag
192 push -u, --set-upstream set upstream for git pull/status
193 commit -u, --untracked-files[=<mode>] show untracked files, optional modes: all, normal, no (Default: al
194 status -u, --untracked-files[=<mode>] show untracked files, optional modes: all, normal, no. (Default: a
195 add -u, --update update tracked files
196 fetch -u, --update-head-ok allow updating of HEAD ref
197 clone -u, --upload-pack <path> path to git-upload-pack on the remote
199 grep -v, --invert-match show non-matching lines
200 add -v, --verbose be verbose
201 branch -v, --verbose show hash and subject, give twice for upstream branch
202 clone -v, --verbose be more verbose
203 commit -v, --verbose show diff in commit message template
204 fetch -v, --verbose be more verbose
205 merge -v, --verbose be more verbose
206 push -v, --verbose be more verbose
207 status -v, --verbose be verbose
208 grep -w, --word-regexp match patterns only at word boundaries
209 merge -X, --strategy-option <option=voption for selected merge strategy
210 commit -z, --null terminate entries with NUL
211 grep -z, --null print NUL after filenames
212 status -z, --null terminate entries with NUL