Re: [PATCH/GSoC/RFC] fetch: git fetch --deepen

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]