On Fri, May 08, 2020 at 09:28:56AM -0700, Junio C Hamano wrote: > -- >8 -- > From: Christopher Warrington <chwarr@xxxxxxxxxxxxx> > Subject: [PATCH] bisect: allow CRLF line endings in "git bisect replay" input > > We advertise that the bisect log can be corrected in your editor > before being fed to "git bisect replay", but some editors may > turn the line endings to CRLF. > > Update the parser of the input lines so that the CR at the end of > the line gets ignored. I'm a little surprised that bash "read" on Windows doesn't eat CRLFs already. But I often find myself confused by line ending decisions in general, as well as the difference between cygwin versus msys versus pure windows binaries, etc. At any rate, munging IFS seems much nicer than having an extra call to tr. > diff --git a/git-bisect.sh b/git-bisect.sh > index efee12b8b1..56548d4be7 100755 > --- a/git-bisect.sh > +++ b/git-bisect.sh > @@ -209,6 +209,7 @@ bisect_replay () { > test "$#" -eq 1 || die "$(gettext "No logfile given")" > test -r "$file" || die "$(eval_gettext "cannot read \$file for replaying")" > git bisect--helper --bisect-reset || exit > + oIFS="$IFS" IFS="$IFS:$(printf '\015')" There's no ":" separator in IFS, so here you're treating colon as end-of-line. I think you just want: IFS="$IFS$(printf '\015')" -Peff