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

Re: [PATCH v2 2/2] rebase -i: use config file format to save author information

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 21, 2009, 06:41 UTC
Message-ID
<7vprcyt7fk.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20090621050846.3554.31660.chriscool@tuxfamily.org>
Christian Couder <chriscool@tuxfamily.org> writes:
> This is better than saving in a shell script, because it will make
> it much easier to port "rebase -i" to C.
Hmph.

We used to parse a commit object in one go into variables, and I would have imagined that a rewrite in C will read a commit object to get the author information in variables in-core, without having to write any temporary file.

But with your patch, it starts to use a temporary file, and forces the C rewrite to do the same. It closes the door for a more efficient rewrite.

Why is this a good change?
> This also removes some sed regexps and some "eval"s.
That is a correct description of what the patch does.

But the use of sed and eval is an implementation detail. As long as they are used correctly, I do not think it is a grave offense to use them, and removal is not an improvement.

A possible argument (or excuse) you _could_ make to justify this change, I think, is that such a temporary file with known name will allow a hook script that is run during a rebase to learn the authorship information of the commit being rebased. This has been hidden inside variables without getting exported, and this patch defines a way for the scripts to get at it if they wanted to.

I didn't check if there is such a codepath that involves hooks, if there are plausible scenarios that they would want to learn that information, nor if the information is hard to get otherwise, though.

Previous: Christian CouderNext: Daniel Barkalow
Message 2 of 8 in “rebase -i: use config file format to save author information”
  1. 2/2 rebase -i: use config file format to save author informationChristian Couder, Jun 21, 2009
  2. Junio C HamanoJun 21, 2009
  3. Daniel BarkalowJun 21, 2009
  4. Junio C HamanoJun 21, 2009
  5. Jakub NarebskiJun 21, 2009
  6. Junio C HamanoJun 21, 2009
  7. Christian CouderJun 21, 2009
  8. Junio C HamanoJun 21, 2009

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.