From: Jeff King Date: Sun, 9 Nov 2014 01:59:18 +0000 (-0500) Subject: t1410: fix breakage on case-insensitive filesystems X-Git-Tag: v2.2.0-rc2~3^2 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/aae828b911e7c0285f10476d42758101825b9add?hp=9233887cce8eaebd8469315622b84bd26910351f t1410: fix breakage on case-insensitive filesystems Two tests recently added to t1410 create branches "a" and "a/b" to test d/f conflicts on reflogs. Earlier, unrelated tests in that script create the path "A/B" in the working tree. There's no conflict on a case-sensitive filesystem, but on a case-insensitive one, "git log" will complain that "a/b" is both a revision and a working tree path. We could fix this by using a "--" to disambiguate, but we are probably better off using names that are less confusing to make it more clear that they are unrelated to the working tree files. This patch turns "a/b" into "one/two". Reported-by: Michael Blume Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- diff --git a/t/t1410-reflog.sh b/t/t1410-reflog.sh index e4409e38df..3b657c4226 100755 --- a/t/t1410-reflog.sh +++ b/t/t1410-reflog.sh @@ -246,36 +246,36 @@ test_expect_success 'gc.reflogexpire=false' ' ' test_expect_success 'stale dirs do not cause d/f conflicts (reflogs on)' ' - test_when_finished "git branch -d a || git branch -d a/b" && + test_when_finished "git branch -d one || git branch -d one/two" && - git branch a/b master && - echo "a/b@{0} branch: Created from master" >expect && - git log -g --format="%gd %gs" a/b >actual && + git branch one/two master && + echo "one/two@{0} branch: Created from master" >expect && + git log -g --format="%gd %gs" one/two >actual && test_cmp expect actual && - git branch -d a/b && + git branch -d one/two && - # now logs/refs/heads/a is a stale directory, but - # we should move it out of the way to create "a" reflog - git branch a master && - echo "a@{0} branch: Created from master" >expect && - git log -g --format="%gd %gs" a >actual && + # now logs/refs/heads/one is a stale directory, but + # we should move it out of the way to create "one" reflog + git branch one master && + echo "one@{0} branch: Created from master" >expect && + git log -g --format="%gd %gs" one >actual && test_cmp expect actual ' test_expect_success 'stale dirs do not cause d/f conflicts (reflogs off)' ' - test_when_finished "git branch -d a || git branch -d a/b" && + test_when_finished "git branch -d one || git branch -d one/two" && - git branch a/b master && - echo "a/b@{0} branch: Created from master" >expect && - git log -g --format="%gd %gs" a/b >actual && + git branch one/two master && + echo "one/two@{0} branch: Created from master" >expect && + git log -g --format="%gd %gs" one/two >actual && test_cmp expect actual && - git branch -d a/b && + git branch -d one/two && - # same as before, but we only create a reflog for "a" if + # same as before, but we only create a reflog for "one" if # it already exists, which it does not - git -c core.logallrefupdates=false branch a master && + git -c core.logallrefupdates=false branch one master && : >expect && - git log -g --format="%gd %gs" a >actual && + git log -g --format="%gd %gs" one >actual && test_cmp expect actual '