From: Philip Oakley Date: Sat, 02 Nov 2013 12:54:52 GMT Subject: Re: Git 1.8.4.2: 'git-rev-parse --is-inside-git-dir' wrong output! Message-ID: <11593D3DCFCD4D24BB881B9E5FAB79C0@PhilipOakley> In-Reply-To: <20131102105816.GC24023@serenity.lan> From: "John Keeping" Sent: Saturday, November 02, 2013 10:58 AM > On Fri, Nov 01, 2013 at 06:19:51PM -0500, Ville Walveranta wrote: >> "git-rev-parse --is-inside-git-dir" outputs "fatal: Not a git >> repository (or any of the parent directories): .git", instead of >> "false" when outside of a git directory. "--is-inside-work-tree" >> behaves the same way. Both commands work correctly (i.e. output >> "true") when inside a git directory, or inside a work tree, >> respectively. > > I think that's intentional - and it looks like the behaviour has not > changed since these options were added. With the current behaviour > you > get three possible outcomes from "git > rev-parse --is-inside-work-tree": > > if worktree=$(git rev-parse --is-inside-work-tree 2>/dev/null) > then > if test "$worktree" = true > then > echo 'inside work tree' > else > echo 'in repository, but not in work tree' > fi > else > echo 'not in repository' > fi > -- Shouldn't this case which produces "fatal:..." need to be documented in the man page? https://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html doesn't mention it. Philip