commit: rename copy_commit_list() to conform to coding guidelines

Our coding guidelines say that:

  Functions that operate on `struct S` are named `S_<verb>()` and should
  generally receive a pointer to `struct S` as first parameter.

While most of the functions related to `struct commit_list` already
follow that naming schema, `copy_commit_list()` doesn't.

Rename the function to address this and adjust all of its callers. Add a
compatibility wrapper for the old function name to ease the transition
and avoid any semantic conflicts with in-flight patch series. This
wrapper will be removed once Git 2.53 has been released.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt 2026-01-15 10:35:32 +01:00 committed by Junio C Hamano
parent 8745eae506
commit ff9fb2cfe6
6 changed files with 16 additions and 7 deletions

View File

@ -1849,7 +1849,7 @@ int cmd_commit(int argc,
} else if (amend) {
if (!reflog_msg)
reflog_msg = "commit (amend)";
parents = copy_commit_list(current_head->parents);
parents = commit_list_copy(current_head->parents);
} else if (whence == FROM_MERGE) {
struct strbuf m = STRBUF_INIT;
FILE *fp;

View File

@ -680,7 +680,7 @@ unsigned commit_list_count(const struct commit_list *l)
return c;
}
struct commit_list *copy_commit_list(const struct commit_list *list)
struct commit_list *commit_list_copy(const struct commit_list *list)
{
struct commit_list *head = NULL;
struct commit_list **pp = &head;

View File

@ -186,13 +186,22 @@ struct commit_list *commit_list_insert_by_date(struct commit *item,
void commit_list_sort_by_date(struct commit_list **list);
/* Shallow copy of the input list */
struct commit_list *copy_commit_list(const struct commit_list *list);
struct commit_list *commit_list_copy(const struct commit_list *list);
/* Modify list in-place to reverse it, returning new head; list will be tail */
struct commit_list *reverse_commit_list(struct commit_list *list);
void free_commit_list(struct commit_list *list);
/*
* Deprecated compatibility functions for `struct commit_list`, to be removed
* once Git 2.53 is released.
*/
static inline struct commit_list *copy_commit_list(struct commit_list *l)
{
return commit_list_copy(l);
}
struct rev_info; /* in revision.h, it circularly uses enum cmit_fmt */
const char *repo_logmsg_reencode(struct repository *r,

View File

@ -5301,7 +5301,7 @@ static void merge_ort_internal(struct merge_options *opt,
struct commit *h2,
struct merge_result *result)
{
struct commit_list *merge_bases = copy_commit_list(_merge_bases);
struct commit_list *merge_bases = commit_list_copy(_merge_bases);
struct commit *next;
struct commit *merged_merge_bases;
const char *ancestor_name;

View File

@ -4224,7 +4224,7 @@ static void save_parents(struct rev_info *revs, struct commit *commit)
if (*pp)
return;
if (commit->parents)
*pp = copy_commit_list(commit->parents);
*pp = commit_list_copy(commit->parents);
else
*pp = EMPTY_PARENT_LIST;
}
@ -4294,7 +4294,7 @@ static void track_linear(struct rev_info *revs, struct commit *commit)
commit->object.flags |= TRACK_LINEAR;
}
free_commit_list(revs->previous_parents);
revs->previous_parents = copy_commit_list(commit->parents);
revs->previous_parents = commit_list_copy(commit->parents);
}
static struct commit *get_revision_1(struct rev_info *revs)

View File

@ -1566,7 +1566,7 @@ static int try_to_commit(struct repository *r,
res = error(_("unable to parse commit author"));
goto out;
}
parents = copy_commit_list(current_head->parents);
parents = commit_list_copy(current_head->parents);
extra = read_commit_extra_headers(current_head, exclude_gpgsig);
} else if (current_head &&
(!(flags & CREATE_ROOT_COMMIT) || (flags & AMEND_MSG))) {