On Tue, May 16, 2017 at 2:46 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: > >> On Mon, 15 May 2017, Junio C Hamano wrote: >> >>> My knee-jerk reaction matched Dscho's, but grep is about contents, >>> and we should be able to test this if we used a sensible tagnames or >>> didn't use any. Glad to see somebody can step back and think ;-) >> >> Maybe somebody should step back even further and think even more, as we >> could adjust test_commit to mangle the argument into a tag name that is >> legal even with a refs backend relying on NTFS. > > Perhaps, but I am not sure if that is needed. > > The point of the helper is to serve as a simple "we are building a > toy sample history by only adding a one-liner new file" convenience > helper, and I think it is sensible to keep its definition simple. > The callers (like the ones being added in the rerolled patch under > discussion) with special needs can supply tagname when the default > one is not suitable. > > In hindsight, perhaps it would have been better if the default for > the helper were _not_ to create any tag (and callers who care about > tags can optionally tell it to add tag, or tag the resulting commit > themselves), but that is lamenting water under the bridge. This works, but I wonder if it's worth it to solve this one-off issue: diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index 5ee124332a..4cab67c410 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -195,7 +195,15 @@ test_commit () { test_tick fi && git ${indir:+ -C "$indir"} commit $signoff -m "$1" && - git ${indir:+ -C "$indir"} tag "${4:-$1}" + if test -n "$4" + then + git ${indir:+ -C "$indir"} tag "$4" + elif test -n "$(echo $1 | tr -d A-Za-z0-9/~_.#-)" + then + error "Implicitly created tag '$1' looks unusual, probably fails outside *nix" + else + git ${indir:+ -C "$indir"} tag "$1" + fi } # Call test_merge with the arguments "<message> <commit>", where <commit>