$GIT_DIR usage
Hi, I had a question about $GIT_DIR. That is to say, it doesn't seem to work. I am using Git 1.5.2.4. See the following: (all the commands I tried besides "git-init" failed).
$ export GIT_DIR="`pwd`/.git_public" $ git init warning: templates not found /usr/share//git-core/templates/ Initialized empty Git repository in /home/user/temp/.git_public/ $ echo > new_file $ git add new_file fatal: add must be run in a work tree $ git commit -a fatal: /usr/bin/git-commit cannot be used without a working tree. $ git commit fatal: /usr/bin/git-commit cannot be used without a working tree. $
Is $GIT_DIR not meant to be used this way? Does it have a different purpose / use case, or is this just a bug?
Thanks,
Dan
I think you also need to set GIT_WORK_TREE.
This way Git will know the root of directories that it controls.
- Dmitry
----- Original Message ----- From: "Dan Zwell" <[email protected]>
Newsgroups: gmane.comp.version-control.git
To: <[email protected]>
Sent: Sunday, 5 August 2007 2:58
Subject: $GIT_DIR usage
Quoted 18 lines
Hi, I had a question about $GIT_DIR. That is to say, it doesn't seem to work. I am using Git 1.5.2.4. See the following: (all the commands I tried besides "git-init" failed).
$ export GIT_DIR="`pwd`/.git_public" $ git init warning: templates not found /usr/share//git-core/templates/ Initialized empty Git repository in /home/user/temp/.git_public/ $ echo > new_file $ git add new_file fatal: add must be run in a work tree $ git commit -a fatal: /usr/bin/git-commit cannot be used without a working tree. $ git commit fatal: /usr/bin/git-commit cannot be used without a working tree. $Is $GIT_DIR not meant to be used this way? Does it have a different purpose / use case, or is this just a bug?
Thanks,
Quoted 31 lines · Dmitry Kakurin
I think you also need to set
GIT_WORK_TREE.
This way Git will know the root of directories that it controls.- Dmitry
----- Original Message ----- From: "Dan Zwell" <[email protected]>
Newsgroups: gmane.comp.version-control.git
To: <[email protected]>
Sent: Sunday, 5 August 2007 2:58
Subject: $GIT_DIR usageQuoted 19 lines
Hi, I had a question about $GIT_DIR. That is to say, it doesn't seem to work. I am using Git 1.5.2.4. See the following: (all the commands I tried besides "git-init" failed).
$ export GIT_DIR="`pwd`/.git_public" $ git init warning: templates not found /usr/share//git-core/templates/ Initialized empty Git repository in /home/user/temp/.git_public/ $ echo > new_file $ git add new_file fatal: add must be run in a work tree $ git commit -a fatal: /usr/bin/git-commit cannot be used without a working tree. $ git commit fatal: /usr/bin/git-commit cannot be used without a working tree. $Is $GIT_DIR not meant to be used this way? Does it have a different purpose / use case, or is this just a bug?
Thanks,
Dan
Thank you. I also had to upgrade Git to the as-yet unreleased version (this variable doesn't exist in the current stable release), but what you said makes sense and seems like it should work.
Dan
Hi,
Quoted 4 lines · Dan Zwell
$ export GIT_DIR="`pwd`/.git_public" $ git init warning: templates not found /usr/share//git-core/templates/ Initialized empty Git repository in /home/user/temp/.git_public/
I think that you implicitly created a bare repository with that. Just check if "git config core.bare" returns true.
If so, you need to change that in order to have a working tree.
Hth,
Dscho
Quoted 9 lines · Johannes Schindelin
Hi,
Quoted 4 lines · Dan Zwell
$ export GIT_DIR="`pwd`/.git_public" $ git init warning: templates not found /usr/share//git-core/templates/ Initialized empty Git repository in /home/user/temp/.git_public/
Quoted 8 lines
I think that you implicitly created a bare repository with that. Just check if "git config core.bare" returns true.
If so, you need to change that in order to have a working tree.
Hth,
Dscho
You are exactly right, I accidentally created a bare repository. I can do 2 things: I can change core.bare to true, or I can create .git in the normal way, then move rename it. Both things still have the problem of git not knowing where the working directory is. Is the only way to fix this in 1.5.2.4, or is my only option to upgrade?
Thanks,
Dan
Hi,
Quoted 4 lines · Dan Zwell
I can do 2 things: I can change core.bare to true, or I can create .git in the normal way, then move rename it. Both things still have the problem of git not knowing where the working directory is. Is the only way to fix this in 1.5.2.4, or is my only option to upgrade?
I really have to ask now: why is ./.git/ not an appropriate name?
Ciao,
Dscho