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

Re: [PATCHv6 3/3] git rebase -i: add static check for commands and SHA-1

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 23, 2015, 19:42 UTC
Message-ID
<xmqqpp4mciu7.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1435009369-11496-3-git-send-email-remi.galan-alfonso@ensimag.grenoble-inp.fr>
Galan Rémi  <remi.galan-alfonso@ensimag.grenoble-inp.fr> writes:
Show 8 quoted lines
>  I used:
>    read -r command sha1 rest <<EOF
>    $line
>    EOF
>  because
>    printf '%s' "$line" | read -r command sha1 rest
>  doesn't work (the 3 variables have no value as a result).
>  There might be a better way to do this, but I don't have it right now.
	while read line
        do
		(
			IFS=' '
                        set x $line
			shift
                        # now $1 is your command, $2 is sha1, $3 is remainder
			...
		)
	done
perhaps?

But more importantly, why do you even need to keep the bad ones in a separate .badcmd and .badsha files? Isn't that bloating your changes unnecessarily, iow, if you issued your warning as you encounter them, wouldn't the change become cleaner and easier to understand (and as a side effect it may even become smaller)? The _only_ thing that you would get by keeping them in temporary files is that you can do "one header and bunch of errors", but is it so common to make a bad edit to the insn sheet that "a sequence of errors, one per line" becomes more burdensome to the end user?

I would think
	stripspace |
	while read -r command sha1 rest
        do
        	...

and showing the warning as you detect inside that loop would be sufficient. Perhaps I am missing subtle details of what you are doing.

Previous: Galan RémiNext: Remi Galan Alfonso
Message 4 of 16 in “[PATCHv6 1/3] git-rebase -i: add command "drop" to remove a commit”
  1. Galan RémiJun 22, 2015
  2. 2/3 git rebase -i: warn about removed commitsGalan Rémi, Jun 22, 2015
  3. 3/3 git rebase -i: add static check for commands and SHA-1Galan Rémi, Jun 22, 2015
  4. Junio C HamanoJun 23, 2015
  5. Remi Galan AlfonsoJun 23, 2015
  6. Eric SunshineJun 23, 2015
  7. Remi Galan AlfonsoJun 23, 2015
  8. Matthieu MoyJun 23, 2015
  9. Remi Galan AlfonsoJun 23, 2015
  10. Matthieu MoyJun 23, 2015
  11. Junio C HamanoJun 23, 2015
  12. Remi Galan AlfonsoJun 23, 2015
  13. Eric SunshineJun 23, 2015
  14. Junio C HamanoJun 23, 2015
  15. Remi Galan AlfonsoJun 23, 2015
  16. Junio C HamanoJun 23, 2015

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.