From: Junio C Hamano Date: Sat, 26 May 2007 03:59:29 GMT Subject: Re: Bug: git-rebase goofs up \n in commit messages Message-ID: <7vwsywnske.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <20070526034236.GA18169@coredump.intra.peff.net> Jeff King writes: > On Sat, May 26, 2007 at 11:10:36AM +1000, Herbert Xu wrote: > >> If you need to echo something that may have escapes in it, the portable >> way to do it is >> >> printf '%s\n' "$test" > > Ah, I see. I had thought the problem was coming from some dash > interpolation magic, but yes, it's just echo doing the conversion. And > POSIX is very clear that this is an implementation defined behavior. > Thanks very much for the response, Herbert. > > Junio, patch is below. I have no idea how prevalent this issue is within > our scripts, but this at least fixes the reported bug. Gaah. Ok, dash uses "echo -e" behaviour by default. I guess we need to hunt allmost all "echo", as I suspect most of them (except the ones we use to do "echo $SHA1") have user strings somewhere. What a mess, but that is not your fault nor Herbert's. Thanks.