mirror of
https://github.com/git/git
synced 2024-07-05 00:58:49 +00:00
repack: use die_for_incompatible_opt3() for -A/-k/--cruft
The repack option --keep-unreachable is incompatible with -A, --cruft is incompatible with -A and -k, and -k is short for --keep-unreachable. So they are all incompatible with each other. Use the function for checking three mutually incompatible options, die_for_incompatible_opt3(), to perform this check in one place and without repetition. This is shorter and clearer. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
b3bf4701cf
commit
1241800867
|
@ -1203,19 +1203,13 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
|
|||
if (delete_redundant && repository_format_precious_objects)
|
||||
die(_("cannot delete packs in a precious-objects repo"));
|
||||
|
||||
if (keep_unreachable &&
|
||||
(unpack_unreachable || (pack_everything & LOOSEN_UNREACHABLE)))
|
||||
die(_("options '%s' and '%s' cannot be used together"), "--keep-unreachable", "-A");
|
||||
die_for_incompatible_opt3(unpack_unreachable || (pack_everything & LOOSEN_UNREACHABLE), "-A",
|
||||
keep_unreachable, "-k/--keep-unreachable",
|
||||
pack_everything & PACK_CRUFT, "--cruft");
|
||||
|
||||
if (pack_everything & PACK_CRUFT) {
|
||||
if (pack_everything & PACK_CRUFT)
|
||||
pack_everything |= ALL_INTO_ONE;
|
||||
|
||||
if (unpack_unreachable || (pack_everything & LOOSEN_UNREACHABLE))
|
||||
die(_("options '%s' and '%s' cannot be used together"), "--cruft", "-A");
|
||||
if (keep_unreachable)
|
||||
die(_("options '%s' and '%s' cannot be used together"), "--cruft", "-k");
|
||||
}
|
||||
|
||||
if (write_bitmaps < 0) {
|
||||
if (!write_midx &&
|
||||
(!(pack_everything & ALL_INTO_ONE) || !is_bare_repository()))
|
||||
|
|
Loading…
Reference in New Issue
Block a user