зеркало из https://github.com/microsoft/git.git
repack, prune: drop GIT_REF_PARANOIA settings
Now that GIT_REF_PARANOIA is the default, we don't need to selectively enable it for destructive operations. In fact, it's harmful to do so, because it overrides any GIT_REF_PARANOIA=0 setting that the user may have provided (because they're trying to work around some corruption). With these uses gone, we can further clean up the ref_paranoia global, and make it a static variable inside the refs code. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Jonathan Tan <jonathantanmy@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
968f12fdac
Коммит
5d1f5b8cd4
|
@ -143,7 +143,6 @@ int cmd_prune(int argc, const char **argv, const char *prefix)
|
||||||
expire = TIME_MAX;
|
expire = TIME_MAX;
|
||||||
save_commit_buffer = 0;
|
save_commit_buffer = 0;
|
||||||
read_replace_refs = 0;
|
read_replace_refs = 0;
|
||||||
ref_paranoia = 1;
|
|
||||||
repo_init_revisions(the_repository, &revs, prefix);
|
repo_init_revisions(the_repository, &revs, prefix);
|
||||||
|
|
||||||
argc = parse_options(argc, argv, prefix, options, prune_usage, 0);
|
argc = parse_options(argc, argv, prefix, options, prune_usage, 0);
|
||||||
|
|
|
@ -586,15 +586,12 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
|
||||||
strvec_pushf(&cmd.args,
|
strvec_pushf(&cmd.args,
|
||||||
"--unpack-unreachable=%s",
|
"--unpack-unreachable=%s",
|
||||||
unpack_unreachable);
|
unpack_unreachable);
|
||||||
strvec_push(&cmd.env_array, "GIT_REF_PARANOIA=1");
|
|
||||||
} else if (pack_everything & LOOSEN_UNREACHABLE) {
|
} else if (pack_everything & LOOSEN_UNREACHABLE) {
|
||||||
strvec_push(&cmd.args,
|
strvec_push(&cmd.args,
|
||||||
"--unpack-unreachable");
|
"--unpack-unreachable");
|
||||||
} else if (keep_unreachable) {
|
} else if (keep_unreachable) {
|
||||||
strvec_push(&cmd.args, "--keep-unreachable");
|
strvec_push(&cmd.args, "--keep-unreachable");
|
||||||
strvec_push(&cmd.args, "--pack-loose-unreachable");
|
strvec_push(&cmd.args, "--pack-loose-unreachable");
|
||||||
} else {
|
|
||||||
strvec_push(&cmd.env_array, "GIT_REF_PARANOIA=1");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (geometry) {
|
} else if (geometry) {
|
||||||
|
|
8
cache.h
8
cache.h
|
@ -994,14 +994,6 @@ extern const char *core_fsmonitor;
|
||||||
extern int core_apply_sparse_checkout;
|
extern int core_apply_sparse_checkout;
|
||||||
extern int core_sparse_checkout_cone;
|
extern int core_sparse_checkout_cone;
|
||||||
|
|
||||||
/*
|
|
||||||
* Include broken refs in all ref iterations, which will
|
|
||||||
* generally choke dangerous operations rather than letting
|
|
||||||
* them silently proceed without taking the broken ref into
|
|
||||||
* account.
|
|
||||||
*/
|
|
||||||
extern int ref_paranoia;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns the boolean value of $GIT_OPTIONAL_LOCKS (or the default value).
|
* Returns the boolean value of $GIT_OPTIONAL_LOCKS (or the default value).
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -31,7 +31,6 @@ int prefer_symlink_refs;
|
||||||
int is_bare_repository_cfg = -1; /* unspecified */
|
int is_bare_repository_cfg = -1; /* unspecified */
|
||||||
int warn_ambiguous_refs = 1;
|
int warn_ambiguous_refs = 1;
|
||||||
int warn_on_object_refname_ambiguity = 1;
|
int warn_on_object_refname_ambiguity = 1;
|
||||||
int ref_paranoia = -1;
|
|
||||||
int repository_format_precious_objects;
|
int repository_format_precious_objects;
|
||||||
int repository_format_worktree_config;
|
int repository_format_worktree_config;
|
||||||
const char *git_commit_encoding;
|
const char *git_commit_encoding;
|
||||||
|
|
2
refs.c
2
refs.c
|
@ -1419,6 +1419,8 @@ struct ref_iterator *refs_ref_iterator_begin(
|
||||||
struct ref_iterator *iter;
|
struct ref_iterator *iter;
|
||||||
|
|
||||||
if (!(flags & DO_FOR_EACH_INCLUDE_BROKEN)) {
|
if (!(flags & DO_FOR_EACH_INCLUDE_BROKEN)) {
|
||||||
|
static int ref_paranoia = -1;
|
||||||
|
|
||||||
if (ref_paranoia < 0)
|
if (ref_paranoia < 0)
|
||||||
ref_paranoia = git_env_bool("GIT_REF_PARANOIA", 1);
|
ref_paranoia = git_env_bool("GIT_REF_PARANOIA", 1);
|
||||||
if (ref_paranoia) {
|
if (ref_paranoia) {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче