On Mon, 27 Jan 2025 at 16:06, Meet Soni <meetsoni3017@xxxxxxxxx> wrote: > > Thank you for reviewing :) > > I've added documentation comments for various function signatures to > better understand what they do. > > Meet Soni (3): > refspec: relocate omit_name_by_refspec and related functions > refspec: relocate query related functions > refspec: relocate apply_refspecs and related funtions > > refspec.c | 203 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > refspec.h | 41 +++++++++++ > remote.c | 201 ----------------------------------------------------- > remote.h | 15 ---- > 4 files changed, 244 insertions(+), 216 deletions(-) > > Range-diff against v1: > 1: 97c98f5a38 ! 1: 8e393ea1c2 refspec: relocate omit_name_by_refspec and related functions > @@ refspec.h: struct strvec; > + * name matches at least one negative refspec, and 0 otherwise. > + */ > +int omit_name_by_refspec(const char *name, struct refspec *rs); > ++ > ++/* > ++ * Checks whether a name matches a pattern and optionally generates a result. > ++ * Returns 1 if the name matches the pattern, 0 otherwise. > ++ */ > +int match_name_with_pattern(const char *key, const char *name, > + const char *value, char **result); > + > 2: 4f0080aad6 ! 2: ef6edbc15b refspec: relocate query related functions > @@ refspec.c: int omit_name_by_refspec(const char *name, struct refspec *rs) > +} > > ## refspec.h ## > -@@ > - #ifndef REFSPEC_H > - #define REFSPEC_H > +@@ refspec.h: struct refspec_item { > + char *raw; > + }; > > -+#include "string-list.h" > ++struct string_list; > + > - #define TAG_REFSPEC "refs/tags/*:refs/tags/*" > + #define REFSPEC_FETCH 1 > + #define REFSPEC_PUSH 0 > > - /** > @@ refspec.h: int omit_name_by_refspec(const char *name, struct refspec *rs); > int match_name_with_pattern(const char *key, const char *name, > const char *value, char **result); > > ++/* > ++ * Queries a refspec for a match and updates the query item. > ++ * Returns 0 on success, -1 if no match is found or negative refspec matches. > ++ */ > +int query_refspecs(struct refspec *rs, struct refspec_item *query); > ++ > ++/* > ++ * Queries a refspec for all matches and appends results to the provided string > ++ * list. > ++ */ > +void query_refspecs_multiple(struct refspec *rs, > + struct refspec_item *query, > + struct string_list *results); > 3: f89328fa66 ! 3: ea72647439 refspec: relocate apply_refspecs and related funtions > @@ refspec.h: void query_refspecs_multiple(struct refspec *rs, > + */ > +struct ref *apply_negative_refspecs(struct ref *ref_map, struct refspec *rs); > + > ++/* > ++ * Applies refspecs to a name and returns the corresponding destination. > ++ * Returns the destination string if a match is found, NULL otherwise. > ++ */ > +char *apply_refspecs(struct refspec *rs, const char *name); > + > #endif /* REFSPEC_H */ > -- > 2.34.1 > Hi everyone, I realized I forgot to include the In-Reply-To header in my v2 submission, which would have linked this series to v1. My apologies for the oversight! For reference, the v1 cover letter can be found here [1] [1]: https://lore.kernel.org/git/20250122075154.5697-1-meetsoni3017@xxxxxxxxx/ Please consider this email as a manual link between the v1 and v2 series. Thank you for your understanding. Best regards, Meet