make "find_ref_by_name" a public function
[gitweb.git] / cache.h
diff --git a/cache.h b/cache.h
index 6663ec52d10720693cf62fe6e69ea6f06e85d7e5..8d601dd6f79d75b8c3b8ac65a56f73cf9b20cedf 100644 (file)
--- a/cache.h
+++ b/cache.h
@@ -493,17 +493,19 @@ struct ref {
        struct ref *next;
        unsigned char old_sha1[20];
        unsigned char new_sha1[20];
-       unsigned char force : 1;
-       unsigned char merge : 1;
-       unsigned char nonfastforward : 1;
-       unsigned char deletion : 1;
+       unsigned int force:1,
+               merge:1,
+               nonfastforward:1,
+               deletion:1;
        enum {
                REF_STATUS_NONE = 0,
                REF_STATUS_OK,
                REF_STATUS_REJECT_NONFASTFORWARD,
                REF_STATUS_REJECT_NODELETE,
                REF_STATUS_UPTODATE,
+               REF_STATUS_REMOTE_REJECT,
        } status;
+       char *error;
        struct ref *peer_ref; /* when renaming */
        char name[FLEX_ARRAY]; /* more */
 };
@@ -512,6 +514,8 @@ struct ref {
 #define REF_HEADS      (1u << 1)
 #define REF_TAGS       (1u << 2)
 
+extern struct ref *find_ref_by_name(struct ref *list, const char *name);
+
 #define CONNECT_VERBOSE       (1u << 0)
 extern struct child_process *git_connect(int fd[2], const char *url, const char *prog, int flags);
 extern int finish_connect(struct child_process *conn);