git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] t1410: fix breakage on case-insensitive filesystems

From
Michael Blume <blume.mike@gmail.com>
Date
Nov 9, 2014, 17:34 UTC
Message-ID
<CAO2U3QiNYCWF_otPnR43gHNA22otR62aC2g8b0CnxVz3rjp7kQ@mail.gmail.com>
In-Reply-To
<20141109015918.GA24736@peff.net>
Works for me, thanks =)

I'm curious now, is there an automated build of git running on a mac anywhere? There's a mac mini running jenkins in my office and it's possible I could convince someone to let me set up a git build that'll e-mail me if there's a test failure.

On Sat, Nov 8, 2014 at 5:59 PM, Jeff King <peff@peff.net> wrote:
Show 92 quoted lines
> On Sat, Nov 08, 2014 at 08:43:54PM -0500, Jeff King wrote:
>
>> Unfortunately I don't have an OS X install handy to test on.
>
> I lied; it turns out I still had access to an old VM. The problem did
> turn out to be rather silly. Here's a patch.
>
> -- >8 --
> 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 <blume.mike@gmail.com>
> Signed-off-by: Jeff King <peff@peff.net>
> ---
> The line-diff is hard to read, but if anyone was looking for a chance to
> test-drive contrib/diff-highlight, it does a good job of making the
> change easy to see.
>
>  t/t1410-reflog.sh | 36 ++++++++++++++++++------------------
>  1 file changed, 18 insertions(+), 18 deletions(-)
>
> diff --git a/t/t1410-reflog.sh b/t/t1410-reflog.sh
> index 976c1d4..8cf4461 100755
> --- a/t/t1410-reflog.sh
> +++ b/t/t1410-reflog.sh
> @@ -254,36 +254,36 @@ test_expect_success 'checkout should not delete log for packed ref' '
>  '
>
>  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
>  '
>
> --
> 2.1.2.596.g7379948
>
Previous: Jeff KingNext: Junio C Hamano
Message 4 of 26 in “Test failure”
  1. Michael BlumeNov 8, 2014
  2. Jeff KingNov 9, 2014
  3. t1410: fix breakage on case-insensitive filesystemsJeff King, Nov 9, 2014
  4. Michael BlumeNov 9, 2014
  5. Junio C HamanoNov 9, 2014
  6. Jeff KingNov 10, 2014
  7. Junio C HamanoNov 10, 2014
  8. Jeff KingNov 10, 2014
  9. Torsten BögershausenNov 9, 2014
  10. Michael BlumeNov 9, 2014
  11. Torsten BögershausenNov 9, 2014
  12. Michael BlumeNov 10, 2014
  13. Junio C HamanoNov 10, 2014
  14. Jeff KingNov 10, 2014
  15. Johannes SixtNov 12, 2014
  16. Jeff KingNov 12, 2014
  17. Johannes SixtNov 13, 2014
  18. Jeff KingNov 13, 2014
  19. Junio C HamanoNov 13, 2014
  20. Johannes SixtNov 14, 2014
  21. Jeff KingNov 14, 2014
  22. Junio C HamanoNov 14, 2014
  23. Andreas SchwabNov 14, 2014
  24. Johannes SixtNov 15, 2014
  25. Windows: correct detection of EISDIR in mingw_open()Johannes Sixt, Nov 16, 2014
  26. Michael BlumeNov 9, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.