From: Junio C Hamano Date: Mon, 10 Jun 2019 16:32:37 GMT Subject: Re: [PATCH 1/1] t0001: fix on case-insensitive filesystems Message-ID: In-Reply-To: <20190609201302.GX8616@genre.crustytoothpaste.net> "brian m. carlson" writes: >> test_expect_success 'init with separate gitdir' ' >> rm -rf newdir && >> git init --separate-git-dir realgitdir newdir && >> echo "gitdir: $(pwd)/realgitdir" >expected && >> + downcase_on_case_insensitive_fs expected newdir/.git && > > I wonder if there's maybe a simpler way. If we canonicalize paths when > writing them to the gitdir file, then writing "$(pwd -P)" on the line > above should produce the right result. > > Now, technically, POSIX doesn't require case canonicalization of the > path with "pwd -P", but then again, POSIX doesn't permit > case-insensitive file systems, and we know the behavior on macOS uses > bash, which does the right thing in this case because it calls > realpath(3). I've tested that it also does the right thing on Linux when > the worktree containing the Git checkout is in a path with symlinks. > > I don't know how that works on Windows, but if it does, it might be > simpler. Yup, it would be a worthwhile avenue to pursue; on the negative side, a single-liner "no, unfortunately that would not work on Windows" would also be useful. Thanks.