summaryrefslogtreecommitdiff
path: root/git-sh-setup-script
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@osdl.org>2005-08-27 20:54:42 (GMT)
committerJunio C Hamano <junkio@cox.net>2005-08-28 06:20:24 (GMT)
commit5f5608bcec417d4c92ac727fdcc83563730c21e9 (patch)
tree6582d615c7bbad333fc473c06293330a228d1caa /git-sh-setup-script
parent9740d289ee76097a2ec43e59f7ecb8974bcf8634 (diff)
downloadgit-5f5608bcec417d4c92ac727fdcc83563730c21e9.zip
git-5f5608bcec417d4c92ac727fdcc83563730c21e9.tar.gz
git-5f5608bcec417d4c92ac727fdcc83563730c21e9.tar.bz2
[PATCH] Make .git directory validation code test HEAD
Inspired by a report by Kalle Valo, this changes git-sh-setup-script and the "setup_git_directory()" function to test that $GIT_DIR/HEAD is a symlink, since a number of core git features depend on that these days. We used to allow a regular file there, but git-fsck-cache has been complaining about that for a while, and anything that uses branches depends on the HEAD file being a symlink, so let's just encode that as a fundamental requirement. Before, a non-symlink HEAD file would appear to work, but have subtle bugs like not having the HEAD show up as a valid reference (because it wasn't under "refs"). Now, we will complain loudly, and the user can fix it up trivially instead of getting strange behaviour. This also removes the tests for "$GIT_DIR" and "$GIT_OBJECT_DIRECTORY" being directories, since the other tests will implicitly test for that anyway (ie the tests for HEAD, refs and 00 would fail). Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-sh-setup-script')
-rwxr-xr-xgit-sh-setup-script3
1 files changed, 1 insertions, 2 deletions
diff --git a/git-sh-setup-script b/git-sh-setup-script
index 5bf471f..84e15df 100755
--- a/git-sh-setup-script
+++ b/git-sh-setup-script
@@ -11,7 +11,6 @@ die() {
exit 1
}
-[ -d "$GIT_DIR" ] &&
+[ -h "$GIT_DIR/HEAD" ] &&
[ -d "$GIT_DIR/refs" ] &&
-[ -d "$GIT_OBJECT_DIRECTORY" ] &&
[ -d "$GIT_OBJECT_DIRECTORY/00" ]