Merge branch 'll/clone-reject-shallow'
"git clone --reject-shallow" option fails the clone as soon as we notice that we are cloning from a shallow repository. * ll/clone-reject-shallow: builtin/clone.c: add --reject-shallow option
This commit is contained in:
12
fetch-pack.c
12
fetch-pack.c
@ -1113,9 +1113,11 @@ static struct ref *do_fetch_pack(struct fetch_pack_args *args,
|
||||
if (args->deepen)
|
||||
setup_alternate_shallow(&shallow_lock, &alternate_shallow_file,
|
||||
NULL);
|
||||
else if (si->nr_ours || si->nr_theirs)
|
||||
else if (si->nr_ours || si->nr_theirs) {
|
||||
if (args->reject_shallow_remote)
|
||||
die(_("source repository is shallow, reject to clone."));
|
||||
alternate_shallow_file = setup_temporary_shallow(si->shallow);
|
||||
else
|
||||
} else
|
||||
alternate_shallow_file = NULL;
|
||||
if (get_pack(args, fd, pack_lockfiles, NULL, sought, nr_sought,
|
||||
&fsck_options.gitmodules_found))
|
||||
@ -1483,10 +1485,12 @@ static void receive_shallow_info(struct fetch_pack_args *args,
|
||||
* rejected (unless --update-shallow is set); do the same.
|
||||
*/
|
||||
prepare_shallow_info(si, shallows);
|
||||
if (si->nr_ours || si->nr_theirs)
|
||||
if (si->nr_ours || si->nr_theirs) {
|
||||
if (args->reject_shallow_remote)
|
||||
die(_("source repository is shallow, reject to clone."));
|
||||
alternate_shallow_file =
|
||||
setup_temporary_shallow(si->shallow);
|
||||
else
|
||||
} else
|
||||
alternate_shallow_file = NULL;
|
||||
} else {
|
||||
alternate_shallow_file = NULL;
|
||||
|
||||
Reference in New Issue
Block a user