From 37fde874c2448ae2cd98abe24df2bd2a50aa2cda Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 5 Aug 2005 00:47:56 -0700 Subject: Fix send-pack for non-commitish tags. Again I left the v2.6.11-tree tag behind. My bad. This commit makes sure that we do not barf when pushing a ref that is a non-commitish tag. You can update a remote ref under the following conditions: * You can always use --force. * Creating a brand new ref is OK. * If the remote ref is exactly the same as what you are pushing, it is OK (nothing is pushed). * You can replace a commitish with another commitish which is a descendant of it, if you can verify the ancestry between them; this and the above means you have to have what you are replacing. * Otherwise you cannot update; you need to use --force. Signed-off-by: Junio C Hamano --- tag.h | 1 + 1 file changed, 1 insertion(+) (limited to 'tag.h') diff --git a/tag.h b/tag.h index 3e8c32d738..36e532401f 100644 --- a/tag.h +++ b/tag.h @@ -15,5 +15,6 @@ struct tag { extern struct tag *lookup_tag(const unsigned char *sha1); extern int parse_tag_buffer(struct tag *item, void *data, unsigned long size); extern int parse_tag(struct tag *item); +extern struct object *deref_tag(struct object *); #endif /* TAG_H */ -- cgit v1.2.3