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

Re: [PATCH v2 00/15] Towards a more awesome git branch

From
Ramkumar Ramachandra <artagnon@gmail.com>
Date
Jun 10, 2013, 12:08 UTC
Message-ID
<CALkWK0kY1P_rLF45L37swzgLhgT7nxmcGpJGjAAhbQheA8pN7Q@mail.gmail.com>
In-Reply-To
<CACsJy8D8FoiVFT5cNbXyxeAngAUJ1X3AdQOGK41FVWyZyEaSKw@mail.gmail.com>
[-CC: Duy, since he has left the community]
Junio: since Duy is no longer around to guide us, I will rely on your guidance.
Duy Nguyen wrote:
> I'm starting to think this is a half-baked solution. It hides
> problems, for example commit placeholders should produce empty string,
> not the literal placeholders.

Why should they produce empty strings? Aren't they equivalent to invalid placeholders?

> Doing that from a callback is really
> ugly.

Why is the callback ugly? I thought it was a great way to extend pretty-formats, without teaching pretty.c about every possible format that callers could ever want.

> There's also the problem with sorting and quoting (both only
> work with for-each-ref atoms only).

Why would I want to sort by reflog-identity-name (or something) in for-each-ref? The sensible fields for sorting in for-each-ref are all for-each-ref atoms.

On quoting, I agree. We must move the quoting to pretty.c eventually, but I don't think it is urgent.

> A better solution may be improving
> pretty.c to the point where it can more or less replace f-e-r's
> --format.

Why would you want to stuff everything into pretty.c? If any callers wants to implement one specialized format, the only way to do it is to stuff it into the One True pretty-formats?

> Even more, I think pretty engine should be easily added to
> cat-file (especially --batch), as a generic way to extract
> information.

Cute theoretical exercise. As usual, I'm not interested: this topic is about making git-branch more awesome, not playing with pretty-formats.

Previous: Duy NguyenNext: Junio C Hamano
Message 18 of 19 in “Towards a more awesome git branch”
  1. 00/15 Towards a more awesome git branchRamkumar Ramachandra, Jun 9, 2013
  2. 01/15 for-each-ref, quote: convert *_quote_print -> *_quote_bufRamkumar Ramachandra, Jun 9, 2013
  3. 02/15 for-each-ref: don't print out elements directlyRamkumar Ramachandra, Jun 9, 2013
  4. 03/15 tar-tree: remove dependency on sq_quote_print()Ramkumar Ramachandra, Jun 9, 2013
  5. 04/15 quote: remove sq_quote_print()Ramkumar Ramachandra, Jun 9, 2013
  6. 05/15 pretty: extend pretty_print_context with callbackRamkumar Ramachandra, Jun 9, 2013
  7. 06/15 pretty: limit recursion in format_commit_one()Ramkumar Ramachandra, Jun 9, 2013
  8. 07/15 pretty: allow passing NULL commit to format_commit_message()Ramkumar Ramachandra, Jun 9, 2013
  9. 08/15 for-each-ref: get --pretty using format_commit_message()Ramkumar Ramachandra, Jun 9, 2013
  10. 09/15 for-each-ref: teach verify_format() about pretty's syntaxRamkumar Ramachandra, Jun 9, 2013
  11. 10/15 for-each-ref: introduce format specifier %>(*) and %<(*)Ramkumar Ramachandra, Jun 9, 2013
  12. 11/15 for-each-ref: introduce %(HEAD) markerRamkumar Ramachandra, Jun 9, 2013
  13. 12/15 for-each-ref: introduce %(upstream:track[short])Ramkumar Ramachandra, Jun 9, 2013
  14. 13/15 for-each-ref: improve responsiveness of %(upstream:track)Ramkumar Ramachandra, Jun 9, 2013
  15. 14/15 pretty: introduce get_pretty_userformatRamkumar Ramachandra, Jun 9, 2013
  16. 15/15 for-each-ref: use get_pretty_userformat in --prettyRamkumar Ramachandra, Jun 9, 2013
  17. Duy NguyenJun 10, 2013
  18. Ramkumar RamachandraJun 10, 2013
  19. Junio C HamanoJun 10, 2013

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.