Merge branch 'js/maint-no-ln-across-libexec-and-bin'
[gitweb.git] / transport.h
index d0b52053fff9bc463438674232bffb6024f3b1fc..27bfc528acb5b51006c7d61db0d1d7910adaf31c 100644 (file)
@@ -18,13 +18,16 @@ struct transport {
        int (*set_option)(struct transport *connection, const char *name,
                          const char *value);
 
-       struct ref *(*get_refs_list)(struct transport *transport);
+       struct ref *(*get_refs_list)(struct transport *transport, int for_push);
        int (*fetch)(struct transport *transport, int refs_nr, const struct ref **refs);
+       int (*push_refs)(struct transport *transport, struct ref *refs, int flags);
        int (*push)(struct transport *connection, int refspec_nr, const char **refspec, int flags);
 
        int (*disconnect)(struct transport *connection);
        char *pack_lockfile;
        signed verbose : 2;
+       /* Force progress even if the output is not a tty */
+       unsigned progress : 1;
 };
 
 #define TRANSPORT_PUSH_ALL 1
@@ -71,5 +74,6 @@ const struct ref *transport_get_remote_refs(struct transport *transport);
 int transport_fetch_refs(struct transport *transport, const struct ref *refs);
 void transport_unlock_pack(struct transport *transport);
 int transport_disconnect(struct transport *transport);
+char *transport_anonymize_url(const char *url);
 
 #endif