Re: [PATCH 3/3] Add a command "fix" to rebase --interactive.
From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:47:50
Hi, On Fri, 4 Dec 2009, Junio C Hamano wrote:
Michael Haggerty [off-list ref] writes:quoted
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh index 0bd3bf7..539413d 100755 --- a/git-rebase--interactive.sh +++ b/git-rebase--interactive.sh@@ -302,7 +302,7 @@ nth_string () { make_squash_message () { if test -f "$SQUASH_MSG"; then - COUNT=$(($(sed -n "s/^# This is [^0-9]*\([1-9][0-9]*\).*/\1/p" \ + COUNT=$(($(sed -n "s/^# Th[^0-9]*\([1-9][0-9]*\)\(th\|st\|nd\|rd\) commit message.*:/\1/p" \ < "$SQUASH_MSG" | sed -ne '$p')+1))This sed replacement worries me. I don't have a time to check myself today but do we use \(this\|or\|that\) alternates with our sed script already elsewhere in the codebase (test scripts do not count)? Otherwise this may suddenly be breaking a platform that has an implementation of sed that may be substandard but so far has been sufficient to work with git.
IIRC "|" was not correctly handled by BSD sed (used e.g. in MacOSX). So maybe it would be best to just look for "commit message"? I agree with Michael that the regex should not be too loose. Ciao, Dscho