]> git.ipfire.org Git - thirdparty/git.git/commit - dir.h
sparse-checkout: create helper methods
authorDerrick Stolee <dstolee@microsoft.com>
Wed, 8 Sep 2021 01:42:30 +0000 (01:42 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 8 Sep 2021 05:41:10 +0000 (22:41 -0700)
commit02155c8c005d0f8ee20a38245e9a065e8b5cc7dc
tree120fa7f3a27a8363f6c8b114342ddb4ea74c0076
parent8a96b9d0a7c85a25e3550a14e5403eb95aca6d37
sparse-checkout: create helper methods

As we integrate the sparse index into more builtins, we occasionally
need to check the sparse-checkout patterns to see if a path is within
the sparse-checkout cone. Create some helper methods that help
initialize the patterns and check for pattern matching to make this
easier.

The existing callers of commands like get_sparse_checkout_patterns() use
a custom 'struct pattern_list' that is not necessarily the one in the
'struct index_state', so there are not many previous uses that could
adopt these helpers. There are just two in builtin/add.c and
sparse-index.c that can use path_in_sparse_checkout().

We add a path_in_cone_mode_sparse_checkout() as well that will only
return false if the path is outside of the sparse-checkout definition
_and_ the sparse-checkout patterns are in cone mode.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Reviewed-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/add.c
dir.c
dir.h
sparse-index.c