Subject: Re: [PATCH] docs: clarify git-rev-list(1) --filter behavior

From: Junio C Hamano <[email-masked]>
Date: Tue, 16 Dec 2025 10:13:22 +0900

Justin Tobler <[email-masked]> writes:

> When using the --filter option for git-rev-list(1), objects that are
> explicitly provided ignore filters and are always printed unless the
> --filter-provided-objects option is also specified. Clarify this
> behavior in the documentation.
>
> Signed-off-by: Justin Tobler <[email-masked]>
> ---
>
> Greetings,
>
> This small documentation update is in response to discussion from [1].
>
> Thanks,
> -Justin
>
> [1]: <[email-masked]>
>
> ---
>  Documentation/rev-list-options.adoc | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/rev-list-options.adoc b/Documentation/rev-list-options.adoc
> index d9665d82c8..453ec59057 100644
> --- a/Documentation/rev-list-options.adoc
> +++ b/Documentation/rev-list-options.adoc
> @@ -983,7 +983,9 @@ to name units in KiB, MiB, or GiB.  For example, `blob:limit=1k`
>  is the same as 'blob:limit=1024'.
>  +
>  The form `--filter=object:type=(tag|commit|tree|blob)` omits all objects
> -which are not of the requested type.
> +which are not of the requested type. Note that explicitly provided objects
> +ignore filters and are always printed unless `--filter-provided-objects` is
> +also specified.

The above documents the status quo correctly, so let's queue, but it
is unfortunate that we need an extra option to do this.