From: Junio C Hamano Date: Sun, 12 Aug 2007 19:32:27 GMT Subject: Re: [BUG] git --work-tree=... status Message-ID: <7vlkcgim5w.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <20070812185855.GA16704@informatik.uni-freiburg.de> Uwe Kleine-König writes: > The problem seems to be that require_work_tree demands more that I think > it should. It calls `git rev-parse --is-inside-work-tree`. I think the semantics of require_work_tree is (currently and has been) indeed "you are supposed to be inside the work tree". "git-status $args" is a "git commit --dry-run $args" and $args are often filenames relative to $cwd that name paths to include in the partial commit, so for this particular case I think it is understandable that it wants you to be _IN_ the work tree. You can propose alternative semantics to "git status" that is defined as "cd_to_toplevel && git diff --cached && git diff" that does not care any of the $args, and I personally am open to such a departure from "commit --dry-run" semantics, which have been there since 1.4.0 days. But that is a huge user level semantics change, and will not belong to the 1.5.X series.