From: Karl Hasselström Date: Wed, 24 Oct 2007 01:20:38 GMT Subject: git-{diff,ls}-files from a subdirectory fails ... Message-ID: <20071024012038.GA31326@diana.vm.bytemark.co.uk> ... when GIT_DIR is specified. I have a repository at ~/stgit-lib. With cwd at the top of the tree, things work as expected when I set all those fancy envoronment variables: kha@yoghurt:~/stgit-lib> git-diff-files --name-only stgit/utillib.py kha@yoghurt:~/stgit-lib> GIT_DIR=/home/kha/stgit-lib/.git GIT_INDEX_FILE=/home/kha/stgit-lib/.git/index GIT_WORK_TREE=/home/kha/stgit-lib git-diff-files --name-only stgit/utillib.py However, it doen't seem to work from a subdirectory: kha@yoghurt:~/stgit-lib/stgit> git-diff-files --name-only stgit/utillib.py kha@yoghurt:~/stgit-lib/stgit> GIT_DIR=/home/kha/stgit-lib/.git GIT_INDEX_FILE=/home/kha/stgit-lib/.git/index GIT_WORK_TREE=/home/kha/stgit-lib git-diff-files --name-only | wc 170 170 3560 Instead of just the one changed file, I get a list of what looks like all the files in the project, suggesting that maybe git assumes I'm at the root of the worktree when I'm not. git-ls-files seems to behave the same way. Bug or user error? -- Karl Hasselström, kha@treskal.com www.treskal.com/kalle