git/Documentation
Derrick Stolee 105c6f14ad bundle: parse filter capability
The v3 bundle format has capabilities, allowing newer versions of Git to
create bundles with newer features. Older versions that do not
understand these new capabilities will fail with a helpful warning.

Create a new capability allowing Git to understand that the contained
pack-file is filtered according to some object filter. Typically, this
filter will be "blob:none" for a blobless partial clone.

This change teaches Git to parse this capability, place its value in the
bundle header, and demonstrate this understanding by adding a message to
'git bundle verify'.

Since we will use gently_parse_list_objects_filter() outside of
list-objects-filter-options.c, make it an external method and move its
API documentation to before its declaration.

Signed-off-by: Derrick Stolee <derrickstolee@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-03-09 10:25:27 -08:00
..
RelNotes The seventh batch 2022-02-23 16:58:13 -08:00
config Merge branch 'gc/branch-recurse-submodules' 2022-02-18 13:53:29 -08:00
howto
technical bundle: parse filter capability 2022-03-09 10:25:27 -08:00
.gitattributes
.gitignore doc lint: make "lint-docs" non-.PHONY 2021-10-15 10:29:11 -07:00
CodingGuidelines CodingGuidelines: hint why we value clearly written log messages 2022-01-27 17:50:04 -08:00
Makefile Merge branch 'ab/fix-make-lint-docs' 2021-10-29 15:43:13 -07:00
MyFirstContribution.txt Merge branch 'jc/tutorial-format-patch-base' 2021-11-29 15:41:46 -08:00
MyFirstObjectWalk.txt MyFirstObjectWalk: update recommended usage 2022-03-09 10:25:27 -08:00
SubmittingPatches SubmittingPatches: explain why we care about log messages 2022-01-27 17:50:04 -08:00
asciidoc.conf
asciidoctor-extensions.rb
blame-options.txt Merge branch 'bs/doc-blame-color-lines' 2021-10-18 15:47:58 -07:00
build-docdep.perl
cat-texi.perl
cmd-list.perl
config.txt Merge branch 'jt/conditional-config-on-remote-url' 2022-02-09 14:20:59 -08:00
date-formats.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
diff-format.txt Documentation/diff-format: state in which cases porcelain status is T 2021-10-04 13:07:18 -07:00
diff-generate-patch.txt
diff-options.txt Merge branch 'js/diff-filter-negation-fix' 2022-02-16 15:14:30 -08:00
doc-diff
docbook-xsl.css
docbook.xsl
everyday.txto
fetch-options.txt fetch --negotiate-only: do not update submodules 2022-01-18 16:22:58 -08:00
fix-texi.perl
git-add.txt add: implement the --sparse option 2021-09-28 10:31:02 -07:00
git-am.txt am: support --allow-empty to record specific empty patches 2021-12-15 17:04:19 -08:00
git-annotate.txt
git-apply.txt git-apply: add --allow-empty flag 2021-12-13 14:30:25 -08:00
git-archimport.txt doc: split placeholders as individual tokens 2021-10-28 09:57:09 -07:00
git-archive.txt archive: describe compression level option 2021-10-25 10:08:23 -07:00
git-bisect-lk2009.txt
git-bisect.txt
git-blame.txt Merge branch 'bs/doc-blame-color-lines' 2021-10-18 15:47:58 -07:00
git-branch.txt branch: add --recurse-submodules option for branch creation 2022-02-04 08:16:39 -08:00
git-bugreport.txt Documentation: fix default directory of git bugreport -o 2021-09-07 14:25:13 -07:00
git-bundle.txt bundle: parse filter capability 2022-03-09 10:25:27 -08:00
git-cat-file.txt cat-file: don't whitespace-pad "(...)" in SYNOPSIS and usage output 2022-01-12 10:12:20 -08:00
git-check-attr.txt
git-check-ignore.txt doc: check-ignore: code-quote an exclamation mark 2022-02-03 11:13:49 -08:00
git-check-mailmap.txt
git-check-ref-format.txt
git-checkout-index.txt checkout-index: add --ignore-skip-worktree-bits option 2022-01-13 13:49:45 -08:00
git-checkout.txt Merge branch 'js/branch-track-inherit' 2022-01-20 15:25:38 -08:00
git-cherry-pick.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-cherry.txt
git-citool.txt
git-clean.txt
git-clone.txt Merge branch 'en/sparse-checkout-set' 2022-01-03 16:24:15 -08:00
git-column.txt column: fix parsing of the '--nl' option 2021-08-26 14:36:27 -07:00
git-commit-graph.txt
git-commit-tree.txt
git-commit.txt Document positive variant of commit and merge option "--no-verify" 2021-10-29 11:22:56 -07:00
git-config.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-count-objects.txt
git-credential-cache--daemon.txt
git-credential-cache.txt
git-credential-store.txt
git-credential.txt doc: fix git credential synopsis 2021-10-28 09:57:09 -07:00
git-cvsexportcommit.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-cvsimport.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-cvsserver.txt Documentation: cleanup git-cvsserver 2021-09-16 20:47:48 -07:00
git-daemon.txt
git-describe.txt
git-diff-files.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-diff-index.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-diff-tree.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-diff.txt git-diff: fix missing --merge-base docs 2021-07-12 13:55:29 -07:00
git-difftool.txt
git-fast-export.txt
git-fast-import.txt
git-fetch-pack.txt
git-fetch.txt Documentation: render special characters correctly 2021-07-30 09:08:12 -07:00
git-filter-branch.txt
git-fmt-merge-msg.txt merge: allow to pretend a merge is made into a different branch 2021-12-20 14:55:02 -08:00
git-for-each-ref.txt ref-filter: --format=%(raw) support --perl 2021-07-26 12:01:25 -07:00
git-for-each-repo.txt
git-format-patch.txt doc: git-format-patch: describe the option --always 2021-12-15 17:04:15 -08:00
git-fsck-objects.txt
git-fsck.txt doc: use three dots for indicating repetition instead of star 2021-11-09 09:39:11 -08:00
git-gc.txt
git-get-tar-commit-id.txt
git-grep.txt
git-gui.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-hash-object.txt
git-help.txt Merge branch 'ja/doc-cleanup' 2021-12-10 14:35:03 -08:00
git-hook.txt git hook run: add an --ignore-missing flag 2022-01-07 15:19:34 -08:00
git-http-backend.txt docs/http-backend: mention v2 protocol 2021-09-10 15:34:59 -07:00
git-http-fetch.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
git-http-push.txt doc: git-http-push: describe the refs as pattern pairs 2021-11-09 09:39:11 -08:00
git-imap-send.txt
git-index-pack.txt index-pack: document and test the --promisor option 2022-03-09 10:25:26 -08:00
git-init-db.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-init.txt init doc: --shared=0xxx does not give umask but perm bits 2021-11-09 09:39:11 -08:00
git-instaweb.txt
git-interpret-trailers.txt
git-log.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-ls-files.txt ls-files: add --sparse option 2021-12-22 11:42:40 -08:00
git-ls-remote.txt
git-ls-tree.txt
git-mailinfo.txt
git-mailsplit.txt
git-maintenance.txt maintenance: add support for systemd timers on Linux 2021-09-07 10:57:04 -07:00
git-merge-base.txt
git-merge-file.txt update documentation for new zdiff3 conflictStyle 2021-12-01 14:45:59 -08:00
git-merge-index.txt doc: use three dots for indicating repetition instead of star 2021-11-09 09:39:11 -08:00
git-merge-one-file.txt
git-merge-tree.txt
git-merge.txt Merge branch 'jc/merge-detached-head-name' 2022-01-05 14:01:30 -08:00
git-mergetool--lib.txt
git-mergetool.txt
git-mktag.txt
git-mktree.txt fix typo in git-mktree.txt 2022-02-02 14:50:09 -08:00
git-multi-pack-index.txt git-multi-pack-index.txt: change "folder" to "directory" 2021-10-25 11:06:56 -07:00
git-mv.txt
git-name-rev.txt name-rev: deprecate --stdin in favor of --annotate-stdin 2022-01-10 09:39:26 -08:00
git-notes.txt
git-p4.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-pack-objects.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-pack-redundant.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-pack-refs.txt
git-patch-id.txt
git-prune-packed.txt
git-prune.txt
git-pull.txt Merge branch 'js/retire-preserve-merges' 2021-10-18 15:47:56 -07:00
git-push.txt Merge branch 'ds/gender-neutral-doc' 2021-07-16 17:42:53 -07:00
git-quiltimport.txt
git-range-diff.txt
git-read-tree.txt Documentation: call out commands that nuke untracked files/directories 2021-09-27 13:38:37 -07:00
git-rebase.txt update documentation for new zdiff3 conflictStyle 2021-12-01 14:45:59 -08:00
git-receive-pack.txt upload-pack: document and rename --advertise-refs 2021-08-05 08:59:37 -07:00
git-reflog.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-remote-ext.txt
git-remote-fd.txt
git-remote-helpers.txto
git-remote.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
git-repack.txt repack: make '--quiet' disable progress 2021-12-20 11:59:17 -08:00
git-replace.txt
git-request-pull.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
git-rerere.txt
git-reset.txt Documentation: call out commands that nuke untracked files/directories 2021-09-27 13:38:37 -07:00
git-restore.txt update documentation for new zdiff3 conflictStyle 2021-12-01 14:45:59 -08:00
git-rev-list.txt
git-rev-parse.txt
git-revert.txt
git-rm.txt rm: add --sparse option 2021-09-28 10:31:02 -07:00
git-send-email.txt send-email docs: add format-patch options 2021-10-28 09:06:15 -07:00
git-send-pack.txt send-pack: properly use parse_options() API for usage string 2021-09-12 18:57:30 -07:00
git-sh-i18n--envsubst.txt
git-sh-i18n.txt
git-sh-setup.txt
git-shell.txt
git-shortlog.txt doc: use only hyphens as word separators in placeholders 2021-11-09 09:39:11 -08:00
git-show-branch.txt
git-show-index.txt
git-show-ref.txt
git-show.txt
git-sparse-checkout.txt Merge branch 'en/sparse-checkout-set' 2022-01-03 16:24:15 -08:00
git-stage.txt doc: express grammar placeholders between angle brackets 2021-11-09 09:39:11 -08:00
git-stash.txt stash: implement '--staged' option for 'push' and 'save' 2021-10-18 13:09:21 -07:00
git-status.txt status: print stash info with --porcelain=v2 --show-stash 2021-10-21 17:24:30 -07:00
git-stripspace.txt
git-submodule.txt
git-svn.txt Merge branch 'ja/doc-cleanup' 2021-12-10 14:35:03 -08:00
git-switch.txt Merge branch 'js/branch-track-inherit' 2022-01-10 11:52:54 -08:00
git-symbolic-ref.txt
git-tag.txt
git-tools.txt
git-unpack-file.txt
git-unpack-objects.txt
git-update-index.txt
git-update-ref.txt
git-update-server-info.txt
git-upload-archive.txt
git-upload-pack.txt Merge branch 'jk/http-server-protocol-versions' 2021-09-23 13:44:47 -07:00
git-var.txt var: add GIT_DEFAULT_BRANCH variable 2021-11-03 13:25:36 -07:00
git-verify-commit.txt
git-verify-pack.txt
git-verify-tag.txt
git-version.txt documentation: add documentation for 'git version' 2021-09-14 10:05:40 -07:00
git-web--browse.txt doc: split placeholders as individual tokens 2021-10-28 09:57:09 -07:00
git-whatchanged.txt
git-worktree.txt git-worktree.txt: add missing `-v` to synopsis for `worktree list` 2021-12-04 23:27:25 -08:00
git-write-tree.txt
git.txt Merge branch 'if/redact-packfile-uri' 2021-12-10 14:35:04 -08:00
gitattributes.txt doc: clarify interaction between 'eol' and text=auto 2022-02-14 13:01:25 -08:00
gitcli.txt git-cli.txt: clarify "options first and then args" 2022-01-17 11:42:25 -08:00
gitcore-tutorial.txt
gitcredentials.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
gitcvs-migration.txt
gitdiffcore.txt
giteveryday.txt
gitfaq.txt Update docs for change of default merge backend 2021-08-05 15:35:02 -07:00
gitglossary.txt
githooks.txt hook: add 'run' subcommand 2022-01-07 15:19:34 -08:00
gitignore.txt gitignore.txt: change "folder" to "directory" 2021-10-25 11:06:56 -07:00
gitk.txt
gitmailmap.txt
gitmodules.txt
gitnamespaces.txt
gitremote-helpers.txt
gitrepository-layout.txt
gitrevisions.txt
gitsubmodules.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
gittutorial-2.txt
gittutorial.txt Documentation: render special characters correctly 2021-07-30 09:08:12 -07:00
gitweb.conf.txt
gitweb.txt gitweb.txt: change "folder" to "directory" 2021-10-25 11:06:57 -07:00
gitworkflows.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
glossary-content.txt glossary: describe "worktree" 2022-02-09 18:34:41 -08:00
howto-index.sh
i18n.txt
install-doc-quick.sh
install-webdoc.sh
line-range-format.txt
line-range-options.txt
lint-gitlink.perl doc lint: make "lint-docs" non-.PHONY 2021-10-15 10:29:11 -07:00
lint-man-end-blurb.perl doc lint: emit errors on STDERR 2021-10-15 10:16:57 -07:00
lint-man-section-order.perl doc lint: emit errors on STDERR 2021-10-15 10:16:57 -07:00
manpage-base-url.xsl.in
manpage-bold-literal.xsl
manpage-normal.xsl
manpage-quote-apos.xsl
manpage.xsl
merge-options.txt Document positive variant of commit and merge option "--no-verify" 2021-10-29 11:22:56 -07:00
merge-strategies.txt Update docs for change of default merge backend 2021-08-05 15:35:02 -07:00
object-format-disclaimer.txt
pretty-formats.txt Merge branch 'es/pretty-describe-more' 2021-12-15 09:39:48 -08:00
pretty-options.txt log: document --encoding behavior on iconv() failure 2021-10-29 14:35:59 -07:00
pull-fetch-param.txt
ref-reachability-filters.txt
rev-list-description.txt
rev-list-options.txt git-rev-list: add --exclude-first-parent-only flag 2022-01-12 11:08:42 -08:00
revisions.txt
sequencer.txt
signoff-option.txt
texi.xsl
trace2-target-values.txt
transfer-data-leaks.txt
urls-remotes.txt doc: uniformize <URL> placeholders' case 2021-11-09 09:39:11 -08:00
urls.txt
user-manual.conf
user-manual.txt Update docs for change of default merge backend 2021-08-05 15:35:02 -07:00