Hi Eric, Sorry for my late response. Thank you for your suggestions! I will try to use them in my next patch version. Best Regards, Dongcan 2015-03-14 3:42 GMT+08:00 Eric Sunshine <sunshine@xxxxxxxxxxxxxx>: > On Fri, Mar 13, 2015 at 9:04 AM, Dongcan Jiang <dongcan.jiang@xxxxxxxxx> wrote: >> This patch is just for discusstion. An option --deepen is added to >> 'git fetch'. When it comes to '--deepen', git should fetch N more >> commits ahead the local shallow commit, where N is indicated by >> '--depth=N'. [1] >> [...] >> Of course, as a patch for discussion, it remains a long way to go >> before being complete. >> [...] >> Signed-off-by: Dongcan Jiang <dongcan.jiang@xxxxxxxxx> >> --- >> diff --git a/fetch-pack.c b/fetch-pack.c >> index 655ee64..6f4adca 100644 >> --- a/fetch-pack.c >> +++ b/fetch-pack.c >> @@ -295,6 +295,7 @@ static int find_common(struct fetch_pack_args *args, >> if (no_done) strbuf_addstr(&c, " no-done"); >> if (use_sideband == 2) strbuf_addstr(&c, " side-band-64k"); >> if (use_sideband == 1) strbuf_addstr(&c, " side-band"); >> + if (args->depth_deepen) strbuf_addstr(&c, " depth_deepen"); > > For consistency, should this be "depth-deepen" rather than "depth_deepen"? > >> if (args->use_thin_pack) strbuf_addstr(&c, " thin-pack"); >> if (args->no_progress) strbuf_addstr(&c, " no-progress"); >> if (args->include_tag) strbuf_addstr(&c, " include-tag"); >> diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh >> index d78f320..6738006 100755 >> --- a/t/t5510-fetch.sh >> +++ b/t/t5510-fetch.sh >> @@ -708,4 +708,15 @@ test_expect_success 'fetching a one-level ref works' ' >> ) >> ' >> >> +test_expect_success 'fetching deepen' ' >> + git clone . deepen --depth=1 && >> + cd deepen && > > When this tests ends, the working directory will still be 'deepen', > which will likely break tests added after this one. If you wrap the > 'cd' and following statements in a subshell via '(' and ')', then the > 'cd' will affect the subshell but leave the parent shell's working > directory alone, and thus not negatively impact subsequent tests. > >> + git fetch .. foo --depth=1 >> + git show foo >> + test_must_fail git show foo~ >> + git fetch .. foo --depth=1 --deepen >> + git show foo~ >> + test_must_fail git show foo~2 > > Broken &&-chain throughout. > >> +' >> + >> test_done -- 江东灿(Dongcan Jiang) Team of Search Engine & Web Mining School of Electronic Engineering & Computer Science Peking University, Beijing, 100871, P.R.China -- 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