git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/2] config/alias.txt: document alias accepting non-command first word

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jun 5, 2019, 12:37 UTC
Message-ID
<nycvar.QRO.7.76.6.1906051434500.1775@tvgsbejvaqbjf.bet>
In-Reply-To
<13d9ddd3541e3815078c4853c6f7c25cddd89126.1559333840.git.liu.denton@gmail.com>
Hi Denton,
On Fri, 31 May 2019, Denton Liu wrote:
Show 7 quoted lines
> 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.
You caught me.

Granted, back in 2006, when I introduced that feature, we were not *quite* as diligent about documenting new features as we are today (see 4ab243a944a6 (Allow an alias to start with "-p", 2006-07-24)).

I like your patch! Maybe you would like to mention `-p`, too, as a possible use case, as that was the original reason I introduced the feature? (To this day, the first thing I do on a new machine *right* after installing Git is to call `git config --global alias.ps '-p status'`)

I'd be fine with these two patches as-are, of course.

Thank you! Dscho

Show 29 quoted lines
>
> Signed-off-by: Denton Liu <liu.denton@gmail.com>
> ---
>  Documentation/config/alias.txt | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/Documentation/config/alias.txt b/Documentation/config/alias.txt
> index 5425449a50..f241f03ebe 100644
> --- a/Documentation/config/alias.txt
> +++ b/Documentation/config/alias.txt
> @@ -7,6 +7,14 @@ 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. For example,
> +`loud-rebase = -c commit.verbose=true rebase` can be defined such that
> +running `git loud-merge` would be equivalent to
> +`git -c commit.verbose=true rebase`.
> ++
>  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
> --
> 2.22.0.rc1.169.g49223abbf8
>
>
Previous: Denton LiuNext: Denton Liu
Message 4 of 8 in “document alias accepting non-command first word”
  1. 0/2 document alias accepting non-command first wordDenton Liu, May 31, 2019
  2. 1/2 config/alias.txt: change " and ' to `Denton Liu, May 31, 2019
  3. 2/2 config/alias.txt: document alias accepting non-command first wordDenton Liu, May 31, 2019
  4. Johannes SchindelinJun 5, 2019
  5. 0/2 Doc: document alias accepting non-command first wordDenton Liu, Jun 5, 2019
  6. 1/2 config/alias.txt: change " and ' to `Denton Liu, Jun 5, 2019
  7. 2/2 config/alias.txt: document alias accepting non-command first wordDenton Liu, Jun 5, 2019
  8. Johannes SchindelinJun 6, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.