summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-01-22 06:23:58 (GMT)
committerJunio C Hamano <junkio@cox.net>2007-01-22 06:23:58 (GMT)
commita0022eebf345a4515c7d148c303911010b1fa834 (patch)
tree6a0924178128df3ac8caace32e404eea04375f22
parentf43117a6c134f3b7873983eae0df1cc14b270ff1 (diff)
downloadgit-a0022eebf345a4515c7d148c303911010b1fa834.zip
git-a0022eebf345a4515c7d148c303911010b1fa834.tar.gz
git-a0022eebf345a4515c7d148c303911010b1fa834.tar.bz2
shallow repository: disable unsupported operations for now.
We currently do not support fetching/cloning from a shallow repository nor pushing into one. Make sure these are not attempted so that we do not have to worry about corrupting repositories needlessly. Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r--receive-pack.c3
-rw-r--r--upload-pack.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/receive-pack.c b/receive-pack.c
index c176d8f..6333f00 100644
--- a/receive-pack.c
+++ b/receive-pack.c
@@ -421,6 +421,9 @@ int main(int argc, char **argv)
if (!enter_repo(dir, 0))
die("'%s': unable to chdir or not a git archive", dir);
+ if (is_repository_shallow())
+ die("attempt to push into a shallow repository");
+
setup_ident();
/* don't die if gecos is empty */
ignore_missing_committer_name();
diff --git a/upload-pack.c b/upload-pack.c
index 3a466c6..3648aae 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -672,7 +672,8 @@ int main(int argc, char **argv)
if (!enter_repo(dir, strict))
die("'%s': unable to chdir or not a git archive", dir);
-
+ if (is_repository_shallow())
+ die("attempt to fetch/clone from a shallow repository");
upload_pack();
return 0;
}