Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Ivankov <divanorama@gmail.com>2011-08-22 16:10:18 +0400
committerJunio C Hamano <gitster@pobox.com>2011-08-23 22:25:56 +0400
commit2efe38e7da40fdf2b6e0261984d7adaab16ad930 (patch)
tree46c1bd9e6f8b059d738e2ebc63d07b4048d40af1 /fast-import.c
parent0906f6e14e6e9df0c4ea4edb08ebe9f5d16c2391 (diff)
fast-import: add tests for tagging blobs
fast-import allows to create an annotated tag that annotates a blob, via mark or direct sha1 specification. For mark it works, for sha1 it tries to read the object. It tries to do so via read_sha1_file, and then checks the size to be at least 46. That's weird, let's just allow to (annotated) tag any object referenced by sha1. If the object originates from our packfile, we still fail though. Signed-off-by: Dmitry Ivankov <divanorama@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'fast-import.c')
-rw-r--r--fast-import.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/fast-import.c b/fast-import.c
index 78d978684d..ca21458612 100644
--- a/fast-import.c
+++ b/fast-import.c
@@ -2688,13 +2688,9 @@ static void parse_new_tag(void)
type = oe->type;
hashcpy(sha1, oe->idx.sha1);
} else if (!get_sha1(from, sha1)) {
- unsigned long size;
- char *buf;
-
- buf = read_sha1_file(sha1, &type, &size);
- if (!buf || size < 46)
- die("Not a valid commit: %s", from);
- free(buf);
+ type = sha1_object_info(sha1, NULL);
+ if (type < 0)
+ die("Not a valid object: %s", from);
} else
die("Invalid ref name or SHA1 expression: %s", from);
read_next_command();