builtin: pass repository to sub commands
In 9b1cb5070f
(builtin: add a repository parameter for builtin
functions, 2024-09-13) the repository was passed down to all builtin
commands. This allowed the repository to be passed down to lower layers
without depending on the global `the_repository` variable.
Continue this work by also passing down the repository parameter from
the command to sub-commands. This will help pass down the repository to
other subsystems and cleanup usage of global variables like
'the_repository' and 'the_hash_algo'.
Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
6ea2d9d271
commit
6f33d8e255
@ -431,7 +431,8 @@ static struct notes_tree *init_notes_check(const char *subcommand,
|
||||
return t;
|
||||
}
|
||||
|
||||
static int list(int argc, const char **argv, const char *prefix)
|
||||
static int list(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
struct notes_tree *t;
|
||||
struct object_id object;
|
||||
@ -468,9 +469,11 @@ static int list(int argc, const char **argv, const char *prefix)
|
||||
return retval;
|
||||
}
|
||||
|
||||
static int append_edit(int argc, const char **argv, const char *prefix);
|
||||
static int append_edit(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED);
|
||||
|
||||
static int add(int argc, const char **argv, const char *prefix)
|
||||
static int add(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo)
|
||||
{
|
||||
int force = 0, allow_empty = 0;
|
||||
const char *object_ref;
|
||||
@ -543,7 +546,7 @@ static int add(int argc, const char **argv, const char *prefix)
|
||||
* argv[0-1].
|
||||
*/
|
||||
argv[0] = "edit";
|
||||
return append_edit(argc, argv, prefix);
|
||||
return append_edit(argc, argv, prefix, repo);
|
||||
}
|
||||
fprintf(stderr, _("Overwriting existing notes for object %s\n"),
|
||||
oid_to_hex(&object));
|
||||
@ -569,7 +572,8 @@ static int add(int argc, const char **argv, const char *prefix)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int copy(int argc, const char **argv, const char *prefix)
|
||||
static int copy(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
int retval = 0, force = 0, from_stdin = 0;
|
||||
const struct object_id *from_note, *note;
|
||||
@ -646,7 +650,8 @@ out:
|
||||
return retval;
|
||||
}
|
||||
|
||||
static int append_edit(int argc, const char **argv, const char *prefix)
|
||||
static int append_edit(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
int allow_empty = 0;
|
||||
const char *object_ref;
|
||||
@ -749,7 +754,8 @@ static int append_edit(int argc, const char **argv, const char *prefix)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int show(int argc, const char **argv, const char *prefix)
|
||||
static int show(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
const char *object_ref;
|
||||
struct notes_tree *t;
|
||||
@ -875,7 +881,8 @@ static int git_config_get_notes_strategy(const char *key,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int merge(int argc, const char **argv, const char *prefix)
|
||||
static int merge(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
struct strbuf remote_ref = STRBUF_INIT, msg = STRBUF_INIT;
|
||||
struct object_id result_oid;
|
||||
@ -1016,7 +1023,8 @@ static int remove_one_note(struct notes_tree *t, const char *name, unsigned flag
|
||||
return (flag & IGNORE_MISSING) ? 0 : status;
|
||||
}
|
||||
|
||||
static int remove_cmd(int argc, const char **argv, const char *prefix)
|
||||
static int remove_cmd(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
unsigned flag = 0;
|
||||
int from_stdin = 0;
|
||||
@ -1059,7 +1067,8 @@ static int remove_cmd(int argc, const char **argv, const char *prefix)
|
||||
return retval;
|
||||
}
|
||||
|
||||
static int prune(int argc, const char **argv, const char *prefix)
|
||||
static int prune(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
struct notes_tree *t;
|
||||
int show_only = 0, verbose = 0;
|
||||
@ -1088,7 +1097,8 @@ static int prune(int argc, const char **argv, const char *prefix)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int get_ref(int argc, const char **argv, const char *prefix)
|
||||
static int get_ref(int argc, const char **argv, const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
{
|
||||
struct option options[] = { OPT_END() };
|
||||
char *notes_ref;
|
||||
@ -1109,7 +1119,7 @@ static int get_ref(int argc, const char **argv, const char *prefix)
|
||||
int cmd_notes(int argc,
|
||||
const char **argv,
|
||||
const char *prefix,
|
||||
struct repository *repo UNUSED)
|
||||
struct repository *repo)
|
||||
{
|
||||
const char *override_notes_ref = NULL;
|
||||
parse_opt_subcommand_fn *fn = NULL;
|
||||
@ -1148,5 +1158,5 @@ int cmd_notes(int argc,
|
||||
strbuf_release(&sb);
|
||||
}
|
||||
|
||||
return !!fn(argc, argv, prefix);
|
||||
return !!fn(argc, argv, prefix, repo);
|
||||
}
|
||||
|
Reference in New Issue
Block a user