mirror of
https://github.com/git/git.git
synced 2024-12-13 20:06:31 +08:00
sparse-checkout: enable reapply to take --[no-]{cone,sparse-index}
Folks may want to switch to or from cone mode, or to or from a sparse-index without changing their sparsity paths. Allow them to do so using the reapply command. Reviewed-by: Derrick Stolee <dstolee@microsoft.com> Reviewed-by: Victoria Dye <vdye@github.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
f2e3a218e8
commit
4e256731d6
@ -759,13 +759,22 @@ static int sparse_checkout_set(int argc, const char **argv, const char *prefix)
|
||||
}
|
||||
|
||||
static char const * const builtin_sparse_checkout_reapply_usage[] = {
|
||||
N_("git sparse-checkout reapply"),
|
||||
N_("git sparse-checkout reapply [--[no-]cone] [--[no-]sparse-index] "),
|
||||
NULL
|
||||
};
|
||||
|
||||
static struct sparse_checkout_reapply_opts {
|
||||
int cone_mode;
|
||||
int sparse_index;
|
||||
} reapply_opts;
|
||||
|
||||
static int sparse_checkout_reapply(int argc, const char **argv)
|
||||
{
|
||||
static struct option builtin_sparse_checkout_reapply_options[] = {
|
||||
OPT_BOOL(0, "cone", &reapply_opts.cone_mode,
|
||||
N_("initialize the sparse-checkout in cone mode")),
|
||||
OPT_BOOL(0, "sparse-index", &reapply_opts.sparse_index,
|
||||
N_("toggle the use of a sparse index")),
|
||||
OPT_END(),
|
||||
};
|
||||
|
||||
@ -777,6 +786,13 @@ static int sparse_checkout_reapply(int argc, const char **argv)
|
||||
builtin_sparse_checkout_reapply_usage, 0);
|
||||
|
||||
repo_read_index(the_repository);
|
||||
|
||||
reapply_opts.cone_mode = -1;
|
||||
reapply_opts.sparse_index = -1;
|
||||
|
||||
if (update_modes(&reapply_opts.cone_mode, &reapply_opts.sparse_index))
|
||||
return 1;
|
||||
|
||||
return update_working_directory(NULL);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user