Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> writes: > The shallow repo could be deepened or shortened when then user gives > --depth. But in future that won't be the only way to deepen/shorten a > repo. Stop relying on args->depth in this mode. Future deepening > methods can simply set this flag on instead of updating all these if > expressions. > > The new name "deepen" was chosen after the command to define shallow > boundary in pack protocol. New commands also follow this tradition. > > Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> > --- OK. Up to here things look more-or-less sensible overall. Thanks. > fetch-pack.c | 14 ++++++++------ > fetch-pack.h | 1 + > 2 files changed, 9 insertions(+), 6 deletions(-) > > diff --git a/fetch-pack.c b/fetch-pack.c > index 16917f9..e947514 100644 > --- a/fetch-pack.c > +++ b/fetch-pack.c > @@ -197,7 +197,7 @@ enum ack_type { > > static void consume_shallow_list(struct fetch_pack_args *args, int fd) > { > - if (args->stateless_rpc && args->depth > 0) { > + if (args->stateless_rpc && args->deepen) { > /* If we sent a depth we will get back "duplicate" > * shallow and unshallow commands every time there > * is a block of have lines exchanged. > @@ -348,7 +348,7 @@ static int find_common(struct fetch_pack_args *args, > packet_buf_flush(&req_buf); > state_len = req_buf.len; > > - if (args->depth > 0) { > + if (args->deepen) { > char *line; > const char *arg; > unsigned char sha1[20]; > @@ -557,7 +557,7 @@ static void filter_refs(struct fetch_pack_args *args, > } > > if (!keep && args->fetch_all && > - (!args->depth || !starts_with(ref->name, "refs/tags/"))) > + (!args->deepen || !starts_with(ref->name, "refs/tags/"))) > keep = 1; > > if (keep) { > @@ -627,7 +627,7 @@ static int everything_local(struct fetch_pack_args *args, > } > } > > - if (!args->depth) { > + if (!args->deepen) { > for_each_ref(mark_complete_oid, NULL); > for_each_alternate_ref(mark_alternate_complete, NULL); > commit_list_sort_by_date(&complete); > @@ -813,6 +813,8 @@ static struct ref *do_fetch_pack(struct fetch_pack_args *args, > > if ((args->depth > 0 || is_repository_shallow()) && !server_supports("shallow")) > die("Server does not support shallow clients"); > + if (args->depth > 0) > + args->deepen = 1; > if (server_supports("multi_ack_detailed")) { > print_verbose(args, "Server supports multi_ack_detailed"); > multi_ack = 2; > @@ -873,7 +875,7 @@ static struct ref *do_fetch_pack(struct fetch_pack_args *args, > > if (args->stateless_rpc) > packet_flush(fd[1]); > - if (args->depth > 0) > + if (args->deepen) > setup_alternate_shallow(&shallow_lock, &alternate_shallow_file, > NULL); > else if (si->nr_ours || si->nr_theirs) > @@ -940,7 +942,7 @@ static void update_shallow(struct fetch_pack_args *args, > int *status; > int i; > > - if (args->depth > 0 && alternate_shallow_file) { > + if (args->deepen && alternate_shallow_file) { > if (*alternate_shallow_file == '\0') { /* --unshallow */ > unlink_or_warn(git_path_shallow()); > rollback_lock_file(&shallow_lock); > diff --git a/fetch-pack.h b/fetch-pack.h > index bb7fd76..4d0adb0 100644 > --- a/fetch-pack.h > +++ b/fetch-pack.h > @@ -25,6 +25,7 @@ struct fetch_pack_args { > unsigned self_contained_and_connected:1; > unsigned cloning:1; > unsigned update_shallow:1; > + unsigned deepen:1; > }; > > /* -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html