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

Re: General support for ! in git-config values

From
Ddemerphq <demerphq@gmail.com>
Date
Feb 2, 2012, 01:14 UTC
Message-ID
<CANgJU+XQWdFmfmBJ4KX4GBz1a=TrVbp9BphGmhEb5Gphmzogjw@mail.gmail.com>
In-Reply-To
<7vliom13lm.fsf@alter.siamese.dyndns.org>
On 2 February 2012 01:27, Junio C Hamano <gitster@pobox.com> wrote:
Show 16 quoted lines
> demerphq <demerphq@gmail.com> writes:
>
>> If Ævar's proposal was implemented without a --with-exec switch then
>>
>> user.name = !me
>>
>> would set your name to the result of executing the "me" command, which
>> likely would have the same result as not having set your name at all,
>> but presumably with a warning about a bad command.
>>
>> user.name=!ldap_full_name
>> user.email=!ldap_email
>
> I didn't get the impression that that was what he was proposing, but
> regardless of who's suggesting it, the above does not make any sense,
> from the syntax point of view.
Does that mean that from a utility point of view it does?

As for the suggestion and who is making it, this came up because Ævar and I were discussing git-deploy and a scenario much like I described, where we use tags to mark out rollouts and we have multiple users using a common staging server and git repo to do the rollouts from, we want the tags to have proper details, so we have to go through some hoops to ensure that users have properly configured things before the do their first rollout. Since Ævar was aware of the "!" notation for aliases and thought it made some kind of sense to reuse the syntax elsewhere he decided to see what people thought. I was not aware of the notation until he pointed it out. I don't use git-alias.

Show 5 quoted lines
> When you say "alias.co = !git checkout --foo-bar", you are not saying
> "instead of usual aliases like 'alias.co = checkout' that defines what
> string replaces the 'co' alias, please run !whatever command, capture
> its output, and that is the _value_ of alias.co variable, i.e. the command
> line that is going to be run".

I think I see your point. Using the same "!" notation for "execute this command and exit" and "execute this command and use its result as the config value" might be confusing.

Do you have a suggestion for a better syntax? Backtick quoting perhaps?

cheers, yves

-- 
perl -Mre=debug -e "/just|another|perl|hacker/"
Previous: Junio C HamanoNext: Junio C Hamano
Message 7 of 20 in “General support for ! in git-config values”
  1. Ævar Arnfjörð BjarmasonFeb 1, 2012
  2. Jeff KingFeb 1, 2012
  3. Ævar Arnfjörð BjarmasonFeb 1, 2012
  4. Junio C HamanoFeb 1, 2012
  5. demerphqFeb 2, 2012
  6. Junio C HamanoFeb 2, 2012
  7. demerphqFeb 2, 2012
  8. Junio C HamanoFeb 2, 2012
  9. demerphqFeb 2, 2012
  10. Jeff KingFeb 2, 2012
  11. demerphqFeb 2, 2012
  12. Jeff KingFeb 2, 2012
  13. demerphqFeb 2, 2012
  14. Kyle MoffettFeb 3, 2012
  15. Junio C HamanoFeb 3, 2012
  16. Kyle MoffettFeb 3, 2012
  17. Jeff KingFeb 3, 2012
  18. Jeff KingFeb 3, 2012
  19. Junio C HamanoFeb 2, 2012
  20. demerphqFeb 2, 2012

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.