summaryrefslogtreecommitdiff
path: root/Documentation/config/alias.txt
diff options
context:
space:
mode:
authorLibravatar Denton Liu <liu.denton@gmail.com>2019-06-05 16:10:13 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2019-06-06 09:33:42 -0700
commit459842e1c2777812130545dc52753c6f4d517e21 (patch)
tree92552a228c83a86b40d09bfa0ce095552fb2f3bd /Documentation/config/alias.txt
parentconfig/alias.txt: change " and ' to ` (diff)
downloadtgif-459842e1c2777812130545dc52753c6f4d517e21.tar.xz
config/alias.txt: document alias accepting non-command first word
One can see that an alias that begins with a non-command first word, such as `loud-rebase = -c commit.verbose=true rebase`, is permitted. However, this isn't immediately obvious to users as alias instances typically begin with a command. Document the fact that an alias can begin with a non-command first word so that users will be able to discover that this is a feature. Signed-off-by: Denton Liu <liu.denton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/config/alias.txt')
-rw-r--r--Documentation/config/alias.txt10
1 files changed, 10 insertions, 0 deletions
diff --git a/Documentation/config/alias.txt b/Documentation/config/alias.txt
index 5425449a50..f1ca739d57 100644
--- a/Documentation/config/alias.txt
+++ b/Documentation/config/alias.txt
@@ -7,6 +7,16 @@ alias.*::
spaces, the usual shell quoting and escaping is supported.
A quote pair or a backslash can be used to quote them.
+
+Note that the first word of an alias does not necessarily have to be a
+command. It can be a command-line option that will be passed into the
+invocation of `git`. In particular, this is useful when used with `-c`
+to pass in one-time configurations or `-p` to force pagination. For example,
+`loud-rebase = -c commit.verbose=true rebase` can be defined such that
+running `git loud-rebase` would be equivalent to
+`git -c commit.verbose=true rebase`. Also, `ps = -p status` would be a
+helpful alias since `git ps` would paginate the output of `git status`
+where the original command does not.
++
If the alias expansion is prefixed with an exclamation point,
it will be treated as a shell command. For example, defining
`alias.new = !gitk --all --not ORIG_HEAD`, the invocation