refspec: relocate apply_refspecs and related funtions
Move the functions `apply_refspecs()` and `apply_negative_refspecs()` from `remote.c` to `refspec.c`. These functions focus on applying refspecs, so centralizing them in `refspec.c` improves code organization by keeping refspec-related logic in one place. Signed-off-by: Meet Soni <meetsoni3017@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
7b24a170d2
commit
d549b6c9ff
31
remote.c
31
remote.c
@ -907,37 +907,6 @@ void ref_push_report_free(struct ref_push_report *report)
|
||||
}
|
||||
}
|
||||
|
||||
struct ref *apply_negative_refspecs(struct ref *ref_map, struct refspec *rs)
|
||||
{
|
||||
struct ref **tail;
|
||||
|
||||
for (tail = &ref_map; *tail; ) {
|
||||
struct ref *ref = *tail;
|
||||
|
||||
if (refname_matches_negative_refspec_item(ref->name, rs)) {
|
||||
*tail = ref->next;
|
||||
free(ref->peer_ref);
|
||||
free(ref);
|
||||
} else
|
||||
tail = &ref->next;
|
||||
}
|
||||
|
||||
return ref_map;
|
||||
}
|
||||
|
||||
char *apply_refspecs(struct refspec *rs, const char *name)
|
||||
{
|
||||
struct refspec_item query;
|
||||
|
||||
memset(&query, 0, sizeof(struct refspec_item));
|
||||
query.src = (char *)name;
|
||||
|
||||
if (refspec_find_match(rs, &query))
|
||||
return NULL;
|
||||
|
||||
return query.dst;
|
||||
}
|
||||
|
||||
int remote_find_tracking(struct remote *remote, struct refspec_item *refspec)
|
||||
{
|
||||
return refspec_find_match(&remote->fetch, refspec);
|
||||
|
Reference in New Issue
Block a user