On Tue, Nov 2, 2010 at 12:22 AM, Paul Drews <paul.drews@xxxxxxxxx> wrote: > Hello, > > I'm observing an unexpected error from "git rebase" run from the directory > containing the ".git" directory: > > $ git --version > > git version 1.7.3.GIT > (includes up to commit ca2090 from git repository at > http://www.kernel.org/pub/scm/git/git.git) > > $ mkdir wherefilesare > $ mkdir wheregitis > $ cd wherefilesare > $ echo "Here is a line from the original" > myfile.txt > $ cd ../wheregitis > $ git init > $ git config core.worktree /absolute/path/to/wherefilesare/ > $ git add . > $ git commit > $ git branch mybranch > $ git checkout mybranch > $ vim ../wherefilesare/myfile.txt > $ git add . > $ git commit > $ git checkout master > $ vim ../wherefilesare/myfile.txt > $ git add . > $ git commit > $ git checkout mybranch > $ git rebase master > > fatal: /usr/libexec/git-core/git-rebase cannot be used without a working tree. > > Since I'm in the directory containing ".git" at this point, the ".git" directory > and the worktree can be unambiguously found. ÂOther commands besides "git > rebase" work. ÂI would expect "git rebase" to work as well. ÂIs this a bug or an > unreasonable expectation on my part? First of all, core.worktree should not matter because GIT_DIR has not been set (No don't trust core.worktree documentation, it's equivalent to --work-tree in "man git"). You need to set GIT_DIR (or --git-dir). That's a bug I'm working on. Then, yes, rebase should be updated to use worktree even if it's outside cwd. I'm not sure how to do it properly in git-rebase.sh though. The requirement "require_work_tree" can be loosen a bit. -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html