Remove duplicate ref matches in fetch
[git/git.git] / remote.h
index 8994052..c62636d 100644 (file)
--- a/remote.h
+++ b/remote.h
@@ -4,8 +4,8 @@
 struct remote {
        const char *name;
 
-       const char **uri;
-       int uri_nr;
+       const char **url;
+       int url_nr;
 
        const char **push_refspec;
        struct refspec *push;
@@ -32,7 +32,7 @@ struct remote *remote_get(const char *name);
 typedef int each_remote_fn(struct remote *remote, void *priv);
 int for_each_remote(each_remote_fn fn, void *priv);
 
-int remote_has_uri(struct remote *remote, const char *uri);
+int remote_has_url(struct remote *remote, const char *url);
 
 struct refspec {
        unsigned force : 1;
@@ -49,6 +49,11 @@ struct ref *alloc_ref(unsigned namelen);
  */
 void free_refs(struct ref *ref);
 
+/*
+ * Removes and frees any duplicate refs in the map.
+ */
+void ref_remove_duplicates(struct ref *ref_map);
+
 struct refspec *parse_ref_spec(int nr_refspec, const char **refspec);
 
 int match_refs(struct ref *src, struct ref *dst, struct ref ***dst_tail,
@@ -88,7 +93,6 @@ struct branch {
 struct branch *branch_get(const char *name);
 
 int branch_has_merge_config(struct branch *branch);
-
-int branch_merges(struct branch *branch, const char *refname);
+int branch_merge_matches(struct branch *, int n, const char *);
 
 #endif