]>
Commit | Line | Data |
---|---|---|
f740c8f1 NTND |
1 | alias.*:: |
2 | Command aliases for the linkgit:git[1] command wrapper - e.g. | |
01991cee DL |
3 | after defining `alias.last = cat-file commit HEAD`, the invocation |
4 | `git last` is equivalent to `git cat-file commit HEAD`. To avoid | |
f740c8f1 NTND |
5 | confusion and troubles with script usage, aliases that |
6 | hide existing Git commands are ignored. Arguments are split by | |
7 | spaces, the usual shell quoting and escaping is supported. | |
8 | A quote pair or a backslash can be used to quote them. | |
9 | + | |
459842e1 DL |
10 | Note that the first word of an alias does not necessarily have to be a |
11 | command. It can be a command-line option that will be passed into the | |
12 | invocation of `git`. In particular, this is useful when used with `-c` | |
13 | to pass in one-time configurations or `-p` to force pagination. For example, | |
14 | `loud-rebase = -c commit.verbose=true rebase` can be defined such that | |
15 | running `git loud-rebase` would be equivalent to | |
16 | `git -c commit.verbose=true rebase`. Also, `ps = -p status` would be a | |
17 | helpful alias since `git ps` would paginate the output of `git status` | |
18 | where the original command does not. | |
19 | + | |
f740c8f1 NTND |
20 | If the alias expansion is prefixed with an exclamation point, |
21 | it will be treated as a shell command. For example, defining | |
01991cee DL |
22 | `alias.new = !gitk --all --not ORIG_HEAD`, the invocation |
23 | `git new` is equivalent to running the shell command | |
24 | `gitk --all --not ORIG_HEAD`. Note that shell commands will be | |
f740c8f1 NTND |
25 | executed from the top-level directory of a repository, which may |
26 | not necessarily be the current directory. | |
01991cee | 27 | `GIT_PREFIX` is set as returned by running `git rev-parse --show-prefix` |
f740c8f1 | 28 | from the original current directory. See linkgit:git-rev-parse[1]. |