From: Nguyễn Thái Ngọc Duy Date: Mon, 23 Aug 2010 12:08:22 +0000 (+1000) Subject: clone: warn users --depth is ignored in local clones X-Git-Tag: v1.7.3-rc0~8^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=24c61c44e65f672ffcd032e43519824719d249c4;p=git-core%2Fgit.git clone: warn users --depth is ignored in local clones Signed-off-by: Nguyễn Thái Ngọc Duy Signed-off-by: Junio C Hamano --- diff --git a/builtin/clone.c b/builtin/clone.c index efb1e6faa..19ed64041 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -361,7 +361,7 @@ static void write_remote_refs(const struct ref *local_refs) int cmd_clone(int argc, const char **argv, const char *prefix) { - int is_bundle = 0; + int is_bundle = 0, is_local; struct stat buf; const char *repo_name, *repo, *work_tree, *git_dir; char *path, *dir; @@ -414,6 +414,9 @@ int cmd_clone(int argc, const char **argv, const char *prefix) repo = xstrdup(make_absolute_path(repo_name)); else repo = repo_name; + is_local = path && !is_bundle; + if (is_local && option_depth) + warning("--depth is ignored in local clones; use file:// instead."); if (argc == 2) dir = xstrdup(argv[1]); @@ -514,7 +517,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) strbuf_reset(&value); - if (path && !is_bundle) { + if (is_local) { refs = clone_local(path, git_dir); mapped_refs = wanted_peer_refs(refs, refspec); } else {