git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] fetch: add a config option to always use the depth argument

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 1, 2014, 20:39 UTC
Message-ID
<xmqqzjb7nlyx.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1417460823-17295-1-git-send-email-sbeller@google.com>
Stefan Beller <sbeller@google.com> writes:
Show 31 quoted lines
> When having a repository, which deals with large amounts of data, i.e.
> graphics, music, films, you may want to keep the git directory at
> the smallest size possible.
>
> The depth option helped us in achieving this goal by removing the sizable
> history and just keep recent history around. In the case of having large
> amounts of data around, you probably want to use the depth option at any
> fetch you do, so it would be convenient to have an option for this.
>
> Change-Id: I45a569239639f20e24fbae32fb2046bc478c5f07
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
>  Documentation/config.txt        | 6 ++++++
>  Documentation/fetch-options.txt | 2 ++
>  builtin/fetch.c                 | 5 +++++
>  3 files changed, 13 insertions(+)
>
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 9220725..418e21f 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -1106,6 +1106,12 @@ fetch.prune::
>  	If true, fetch will automatically behave as if the `--prune`
>  	option was given on the command line.  See also `remote.<name>.prune`.
>  
> +fetch.depth::
> +	If set, fetch will automatically behave as if the `--depth`
> +	option was given on the command line.  This allows users to keep
> +	the git directory at low space requirements, and thus comes in handy
> +	for users with large binary files in the repository.
> +

Hmm, is this something a user would typically want repository-wide? I am wondering if "remote.$nick.fetchDepth" or something scoped to remote is more appropriate.

Show 31 quoted lines
>  format.attach::
>  	Enable multipart/mixed attachments as the default for
>  	'format-patch'.  The value can also be a double quoted string
> diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
> index b09a783..81131d0 100644
> --- a/Documentation/fetch-options.txt
> +++ b/Documentation/fetch-options.txt
> @@ -12,6 +12,8 @@
>  	`git clone` with `--depth=<depth>` option (see linkgit:git-clone[1])
>  	to the specified number of commits from the tip of each remote
>  	branch history. Tags for the deepened commits are not fetched.
> +	You can configure git to always use the depth option, see
> +	`fetch.depth` in linkgit:git-config[1]
>  
>  --unshallow::
>  	If the source repository is complete, convert a shallow
> diff --git a/builtin/fetch.c b/builtin/fetch.c
> index 7b84d35..30fa15b 100644
> --- a/builtin/fetch.c
> +++ b/builtin/fetch.c
> @@ -68,6 +68,11 @@ static int git_fetch_config(const char *k, const char *v, void *cb)
>  		fetch_prune_config = git_config_bool(k, v);
>  		return 0;
>  	}
> +	if (!strcmp(k, "fetch.depth")) {
> +		if (git_config_string(&depth, k, v))
> +			return -1;
> +		return 0;
> +	}
>  	return git_default_config(k, v, cb);
>  }
Previous: Stefan BellerNext: Junio C Hamano
Message 2 of 3 in “fetch: add a config option to always use the depth argument”
  1. fetch: add a config option to always use the depth argumentStefan Beller, Dec 1, 2014
  2. Junio C HamanoDec 1, 2014
  3. Junio C HamanoDec 1, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.