Christian Couder <christian.cou...@gmail.com> writes:

> It is nice to just be able to test if untracked cache is
> supported without enabling it.
>
> Signed-off-by: Christian Couder <chrisc...@tuxfamily.org>
> ---
>  Documentation/git-update-index.txt | 12 +++++++++++-
>  builtin/update-index.c             |  5 +++++
>  2 files changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/git-update-index.txt 
> b/Documentation/git-update-index.txt
> index f4e5a85..a0afe17 100644
> --- a/Documentation/git-update-index.txt
> +++ b/Documentation/git-update-index.txt
> @@ -18,7 +18,7 @@ SYNOPSIS
>            [--[no-]skip-worktree]
>            [--ignore-submodules]
>            [--[no-]split-index]
> -          [--[no-|force-]untracked-cache]
> +          [--[no-|test-|force-]untracked-cache]
>            [--really-refresh] [--unresolve] [--again | -g]
>            [--info-only] [--index-info]
>            [-z] [--stdin] [--index-version <n>]
> @@ -180,6 +180,16 @@ may not support it yet.
>       system must change `st_mtime` field of a directory if files
>       are added or deleted in that directory.
>  
> +--test-untracked-cache::
> +     Only perform tests on the working directory to make sure
> +     untracked cache can be used. You have to manually enable
> +     untracked cache using `--force-untracked-cache` (or
> +     `--untracked-cache` but this will run the tests again)
> +     afterwards if you really want to use it. If a test fails
> +     the exit code is 1 and a message explains what is not
> +     working as needed, otherwise the exit code is 0 and OK is
> +     printed.
> +

Looks good.

>  --force-untracked-cache::
>       For safety, `--untracked-cache` performs tests on the working
>       directory to make sure untracked cache can be used. These
> diff --git a/builtin/update-index.c b/builtin/update-index.c
> index 1e546a3..62222dd 100644
> --- a/builtin/update-index.c
> +++ b/builtin/update-index.c
> @@ -40,6 +40,7 @@ enum uc_mode {
>       UC_UNSPECIFIED = -1,
>       UC_DISABLE = 0,
>       UC_ENABLE,
> +     UC_TEST,
>       UC_FORCE
>  };
>  
> @@ -1004,6 +1005,8 @@ int cmd_update_index(int argc, const char **argv, const 
> char *prefix)
>                       N_("enable or disable split index")),
>               OPT_BOOL(0, "untracked-cache", &untracked_cache,
>                       N_("enable/disable untracked cache")),
> +             OPT_SET_INT(0, "test-untracked-cache", &untracked_cache,
> +                         N_("test if the filesystem supports untracked 
> cache"), UC_TEST),
>               OPT_SET_INT(0, "force-untracked-cache", &untracked_cache,
>                           N_("enable untracked cache without testing the 
> filesystem"), UC_FORCE),
>               OPT_END()
> @@ -1119,6 +1122,8 @@ int cmd_update_index(int argc, const char **argv, const 
> char *prefix)
>                       setup_work_tree();
>                       if (!test_if_untracked_cache_is_supported())
>                               return 1;
> +                     if (untracked_cache == UC_TEST)
> +                             return 0;
>               }
>               if (!the_index.untracked) {
>                       uc = xcalloc(1, sizeof(*uc));
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to