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

Re: git rebase -i error message interprets \t in commit message

From
David Kastrup <dak@gnu.org>
Date
Aug 6, 2013, 19:23 UTC
Message-ID
<87bo5a62te.fsf@fencepost.gnu.org>
In-Reply-To
<vpqd2pqka9e.fsf@anie.imag.fr>
Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> writes:
Show 6 quoted lines
>>From 7962ac8d8f2cbc556f669fd97487f9d70edc4ea1 Mon Sep 17 00:00:00 2001
> From: Matthieu Moy <Matthieu.Moy@imag.fr>
> Date: Tue, 6 Aug 2013 19:13:03 +0200
> Subject: [PATCH] die_with_status: use "printf '%s\n'", not "echo"
>
> At least GNU echo interprets backslashes in its arguments.

I think that's incorrect in several respects. For one thing, echo is never called for most Bourne shells since echo is a builtin (might have been different for UNIX version 7 or so). For another, GNU echo would behave like Bash:

And GNU Bash does not interpret escapes unless you do echo -e. Escape sequence interpretation, however, happens for Dash:

dak@lola:/usr/local/tmp/lilypond$ dash -c 'echo "x\tx"' x x dak@lola:/usr/local/tmp/lilypond$ bash -c 'echo "x\tx"' x\tx dak@lola:/usr/local/tmp/lilypond$ /bin/echo "x\tx" x\tx

So replace "GNU echo" in your commit message with "Dash's echo builtin" and you get closer.

-- 
David Kastrup
Previous: Matthieu MoyNext: Junio C Hamano
Message 7 of 14 in “git rebase -i error message interprets \t in commit message”
  1. David KastrupAug 6, 2013
  2. Ramkumar RamachandraAug 6, 2013
  3. Junio C HamanoAug 6, 2013
  4. Matthieu MoyAug 6, 2013
  5. David KastrupAug 6, 2013
  6. Matthieu MoyAug 6, 2013
  7. David KastrupAug 6, 2013
  8. Junio C HamanoAug 6, 2013
  9. Junio C HamanoAug 6, 2013
  10. die_with_status: use "printf '%s\n'", not "echo"Matthieu Moy, Aug 6, 2013
  11. Thomas RastAug 7, 2013
  12. Matthieu MoyAug 7, 2013
  13. die_with_status: use "printf '%s\n'", not "echo"Matthieu Moy, Aug 7, 2013
  14. Thomas RastAug 7, 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.