git-commit-vandalism/Documentation
Shawn O. Pearce de1a2fdd38 Smart push over HTTP: client side
The git-remote-curl backend detects if the remote server supports
the git-receive-pack service, and if so, runs git-send-pack in a
pipe to dump the command and pack data as a single POST request.

The advertisements from the server that were obtained during the
discovery are passed into git-send-pack before the POST request
starts.  This permits git-send-pack to operate largely unmodified.

For smaller packs (those under 1 MiB) a HTTP/1.0 POST with a
Content-Length is used, permitting interaction with any server.
The 1 MiB limit is arbitrary, but is sufficent to fit most deltas
created by human authors against text sources with the occasional
small binary file (e.g. few KiB icon image).  The configuration
option http.postBuffer can be used to increase (or shink) this
buffer if the default is not sufficient.

For larger packs which cannot be spooled entirely into the helper's
memory space (due to http.postBuffer being too small), the POST
request requires HTTP/1.1 and sets "Transfer-Encoding: chunked".
This permits the client to upload an unknown amount of data in one
HTTP transaction without needing to pregenerate the entire pack
file locally.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
CC: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-11-04 17:58:15 -08:00
..
howto Documentation: Typo / spelling / formatting fixes 2009-03-03 21:43:19 -08:00
pt_BR Fix typos on pt_BR/gittutorial.txt translation 2009-07-31 11:24:18 -07:00
technical racy-git.txt: explain nsec problem in more detail 2009-10-09 14:56:32 -07:00
.gitattributes
.gitignore
asciidoc.conf git-submodule documentation: fix foreach example 2009-06-30 11:17:54 -07:00
blame-options.txt Merge branch 'dm/maint-docco' 2009-03-21 23:24:46 -07:00
build-docdep.perl
cat-texi.perl Fix the building of gitman.info document 2008-12-29 00:40:10 -08:00
cmd-list.perl
CodingGuidelines lstat_cache(): swap func(length, string) into func(string, length) 2009-02-09 20:59:26 -08:00
config.txt Smart push over HTTP: client side 2009-11-04 17:58:15 -08:00
diff-format.txt Update the documentation of the raw diff output format 2009-07-28 13:32:59 -07:00
diff-generate-patch.txt Documentation: fix typos, grammar, asciidoc syntax 2008-12-19 19:10:46 -08:00
diff-options.txt doc: clarify how -S works 2009-03-19 02:47:40 -07:00
docbook-xsl.css docbook: change css style 2009-04-06 00:27:09 -07:00
docbook.xsl
everyday.txt everyday: use the dashless form of git-init 2009-03-22 10:33:36 -07:00
fetch-options.txt git-pull: do not mention --quiet and --verbose twice 2009-09-07 15:45:13 -07:00
fix-texi.perl
git-add.txt Improve --patch option documentation in git-add 2009-09-13 01:36:13 -07:00
git-am.txt add documentation for mailinfo.scissors and '--no-scissors' 2009-09-11 00:23:07 -07:00
git-annotate.txt Documentation: minor grammatical fixes. 2009-03-02 12:34:54 -08:00
git-apply.txt git apply: option to ignore whitespace differences 2009-08-05 11:59:56 -07:00
git-archimport.txt
git-archive.txt git-archive: infer output format from filename when unspecified 2009-09-13 13:54:39 -07:00
git-bisect.txt Documentation: remove warning saying that "git bisect skip" may slow bisection 2009-06-13 10:48:59 -07:00
git-blame.txt Documentation: minor grammatical fixes in git-blame.txt. 2009-03-17 12:08:43 -07:00
git-branch.txt Documentation: clarify branch creation 2009-10-09 14:54:15 -07:00
git-bundle.txt Documentation: minor grammatical fixes and rewording in git-bundle.txt 2009-03-22 20:59:20 -07:00
git-cat-file.txt fix cat-file usage message and documentation 2009-05-25 12:08:15 -07:00
git-check-attr.txt Documentation: minor grammatical fixes in git-check-attr.txt 2009-03-22 21:02:38 -07:00
git-check-ref-format.txt Merge branch 'rr/forbid-bs-in-ref' 2009-05-23 01:39:45 -07:00
git-checkout-index.txt
git-checkout.txt Merge branch 'tr/reset-checkout-patch' 2009-09-07 15:24:38 -07:00
git-cherry-pick.txt Fix misleading wording for git-cherry-pick 2008-11-23 19:32:39 -08:00
git-cherry.txt Documentation: clarify which parameters are optional to git-cherry 2009-01-05 11:43:28 -08:00
git-citool.txt
git-clean.txt UI consistency: allow --force for where -f means force 2009-08-29 14:08:03 -07:00
git-clone.txt Documentation: clone: clarify discussion of initial branch 2009-10-09 17:21:46 -07:00
git-commit-tree.txt Fix passwd(5) ref and reflect that commit doens't use commit-tree 2008-09-03 14:51:19 -07:00
git-commit.txt git-commit doc: remove duplicated --dry-run description 2009-09-13 11:24:26 -07:00
git-config.txt git config: clarify --add and --get-color 2009-05-09 00:19:25 -07:00
git-count-objects.txt count-objects: Add total pack size to verbose output 2008-08-17 01:01:42 -07:00
git-cvsexportcommit.txt Add -k option to cvsexportcommit to revert expanded CVS keywords in CVS working tree before applying commit patch 2009-06-18 10:19:50 -07:00
git-cvsimport.txt Documentation: fix typos / spelling mistakes 2009-04-20 15:56:07 -07:00
git-cvsserver.txt adapt git-cvsserver manpage to dash-free syntax 2008-08-18 22:05:44 -07:00
git-daemon.txt Merge branch 'maint-1.6.0' into maint-1.6.1 2009-04-18 14:43:24 -07:00
git-describe.txt Merge branch 'maint' 2009-01-23 21:51:20 -08:00
git-diff-files.txt Update the documentation of the raw diff output format 2009-07-28 13:32:59 -07:00
git-diff-index.txt Update the documentation of the raw diff output format 2009-07-28 13:32:59 -07:00
git-diff-tree.txt Update the documentation of the raw diff output format 2009-07-28 13:32:59 -07:00
git-diff.txt Update the documentation of the raw diff output format 2009-07-28 13:32:59 -07:00
git-difftool.txt mergetool--lib: add support for araxis merge 2009-05-24 11:21:05 -07:00
git-fast-export.txt git fast-export: add --no-data option 2009-07-31 07:48:09 -07:00
git-fast-import.txt
git-fetch-pack.txt
git-fetch.txt
git-filter-branch.txt filter-branch: add --prune-empty to option summary 2009-10-02 03:58:24 -04:00
git-fmt-merge-msg.txt Documentation: git fmt-merge-msg does not have to be a script 2009-10-09 14:40:25 -07:00
git-for-each-ref.txt for-each-ref: utilize core.warnAmbiguousRefs for :short-format 2009-04-13 09:36:52 -07:00
git-format-patch.txt Improve doc for format-patch threading options. 2009-07-22 21:57:41 -07:00
git-fsck-objects.txt
git-fsck.txt doc/git-fsck: change the way for getting heads' SHA1s 2008-12-21 12:04:12 -08:00
git-gc.txt Documentation/git-gc.txt: default --aggressive window is 250, not 10 2009-09-29 08:27:45 -07:00
git-get-tar-commit-id.txt
git-grep.txt grep: Add --max-depth option. 2009-07-22 21:54:54 -07:00
git-gui.txt Documentation: New GUI configuration and command-line options. 2008-11-14 21:38:11 -08:00
git-hash-object.txt
git-help.txt builtin-help: fallback to GIT_MAN_VIEWER before man 2008-08-29 21:46:33 -07:00
git-http-backend.txt http-backend: more explict LocationMatch 2009-11-04 17:58:15 -08:00
git-http-fetch.txt
git-http-push.txt
git-imap-send.txt Merge branch 'maint' 2009-04-18 14:45:59 -07:00
git-index-pack.txt
git-init-db.txt init-db: migrate to parse-options 2009-07-12 14:36:40 -07:00
git-init.txt git init: optionally allow a directory argument 2009-07-25 02:17:54 -07:00
git-instaweb.txt Add support for the Mongoose web server. 2009-08-23 15:03:53 -07:00
git-log.txt git-log: allow --decorate[=short|full] 2009-08-26 12:05:58 -07:00
git-lost-found.txt
git-ls-files.txt git-ls-files.txt: clarify what "other files" mean for --other 2009-08-06 14:01:13 -07:00
git-ls-remote.txt
git-ls-tree.txt Merge branch 'maint-1.6.1' into maint-1.6.2 2009-05-13 21:06:11 -07:00
git-mailinfo.txt add documentation for mailinfo.scissors and '--no-scissors' 2009-09-11 00:23:07 -07:00
git-mailsplit.txt
git-merge-base.txt git-merge-base/git-show-branch --merge-base: Documentation and test 2009-08-05 10:29:37 -07:00
git-merge-file.txt Improve language in git-merge.txt and related docs 2008-12-09 20:57:52 -08:00
git-merge-index.txt Improve language in git-merge.txt and related docs 2008-12-09 20:57:52 -08:00
git-merge-one-file.txt
git-merge-tree.txt Improve language in git-merge.txt and related docs 2008-12-09 20:57:52 -08:00
git-merge.txt Documentation: clarify mergeoptions description 2009-10-09 14:43:04 -07:00
git-mergetool--lib.txt mergetool--lib: simplify API usage by removing more global variables 2009-04-12 15:19:12 -07:00
git-mergetool.txt mergetool--lib: add support for araxis merge 2009-05-24 11:21:05 -07:00
git-mktag.txt
git-mktree.txt mktree --batch: build more than one tree object 2009-05-16 10:28:59 -07:00
git-mv.txt UI consistency: allow --force for where -f means force 2009-08-29 14:08:03 -07:00
git-name-rev.txt Fix example in git-name-rev documentation 2008-08-30 13:23:01 -07:00
git-pack-objects.txt git repack: keep commits hidden by a graft 2009-07-24 09:10:16 -07:00
git-pack-redundant.txt
git-pack-refs.txt doc/git-pack-refs: fix two grammar issues 2009-04-05 00:39:37 -07:00
git-parse-remote.txt parse-remote: remove unused functions 2009-06-11 19:50:45 -07:00
git-patch-id.txt Grammar fixes to "merge" and "patch-id" docs 2009-03-25 17:28:33 -07:00
git-peek-remote.txt
git-prune-packed.txt prune-packed: migrate to parse-options 2009-07-10 23:57:21 -07:00
git-prune.txt make prune report removed objects on -v 2008-09-30 14:30:00 -07:00
git-pull.txt
git-push.txt git-push: Accept -n as a synonym for --dry-run. 2009-09-13 11:29:18 -07:00
git-quiltimport.txt quiltimport documentation: --dry-run and -n are synonyms 2009-09-13 01:32:49 -07:00
git-read-tree.txt read-tree: migrate to parse-options 2009-06-27 14:11:28 -07:00
git-rebase.txt git apply: option to ignore whitespace differences 2009-08-05 11:59:56 -07:00
git-receive-pack.txt Documentation: fix typos, grammar, asciidoc syntax 2008-12-19 19:10:46 -08:00
git-reflog.txt Documentation: fix typos, grammar, asciidoc syntax 2008-12-19 19:10:46 -08:00
git-relink.txt
git-remote-helpers.txt Move WebDAV HTTP push under remote-curl 2009-10-30 19:20:54 -07:00
git-remote.txt Fix typos in git-remote.txt and git-symbolic-ref.txt 2009-08-10 19:05:00 -07:00
git-repack.txt git-repack.txt: Clarify implications of -a for dumb protocols 2009-06-09 23:47:49 -07:00
git-replace.txt Documentation: add documentation for "git replace" 2009-05-31 17:03:40 -07:00
git-repo-config.txt
git-request-pull.txt
git-rerere.txt git-rerere.txt: Clarify ambiguity of the config variable 2009-07-28 13:30:42 -07:00
git-reset.txt Implement 'git reset --patch' 2009-08-15 15:17:47 -07:00
git-rev-list.txt Merge branch 'maint' 2009-08-12 16:36:04 -07:00
git-rev-parse.txt parse-opt: make PARSE_OPT_STOP_AT_NON_OPTION available to git rev-parse 2009-06-13 17:08:37 -07:00
git-revert.txt git-revert documentation: refer to new HOWTO on reverting faulty merges 2008-12-21 18:34:49 -08:00
git-rm.txt
git-send-email.txt Documentation: git-send-email: correct statement about standard ports 2009-07-31 11:22:50 -07:00
git-send-pack.txt
git-sh-setup.txt
git-shell.txt git-shell: Add 'git-upload-archive' to allowed commands. 2009-04-11 11:01:15 -07:00
git-shortlog.txt Move mailmap documentation into separate file 2009-02-08 12:38:08 -08:00
git-show-branch.txt git-merge-base/git-show-branch --merge-base: Documentation and test 2009-08-05 10:29:37 -07:00
git-show-index.txt
git-show-ref.txt show-ref: migrate to parse-options 2009-06-20 23:50:42 -07:00
git-show.txt
git-stage.txt Add a built-in alias for 'stage' to the 'add' command 2008-12-02 16:13:16 -08:00
git-stash.txt Merge branch 'maint-1.6.4' into maint 2009-10-13 01:01:04 -07:00
git-status.txt
git-stripspace.txt
git-submodule.txt Merge branch 'jh/submodule-foreach' 2009-08-27 16:59:25 -07:00
git-svn.txt git-svn.txt: Fix location of parent argument 2009-08-18 20:47:11 -07:00
git-symbolic-ref.txt Fix typos in git-remote.txt and git-symbolic-ref.txt 2009-08-10 19:05:00 -07:00
git-tag.txt UI consistency: allow --force for where -f means force 2009-08-29 14:08:03 -07:00
git-tar-tree.txt
git-tools.txt
git-unpack-file.txt
git-unpack-objects.txt
git-update-index.txt Documentation: fix typos, grammar, asciidoc syntax 2008-12-19 19:10:46 -08:00
git-update-ref.txt
git-update-server-info.txt Remove obsolete bug warning in man git-update-server-info 2009-04-25 09:29:38 -07:00
git-upload-archive.txt
git-upload-pack.txt upload-pack: add a trigger for post-upload-pack hook 2009-08-28 22:39:17 -07:00
git-var.txt Fix passwd(5) ref and reflect that commit doens't use commit-tree 2008-09-03 14:51:19 -07:00
git-verify-pack.txt verify-pack --stat-only: show histogram without verifying 2009-08-07 20:45:31 -07:00
git-verify-tag.txt
git-web--browse.txt git-web--browse: Support for using /bin/start on MinGW 2008-09-24 15:49:21 -07:00
git-whatchanged.txt
git-write-tree.txt Minor improvement to the write-tree documentation 2009-08-26 12:05:58 -07:00
git.txt GIT 1.6.5 2009-10-10 00:05:19 -07:00
gitattributes.txt Change mentions of "git programs" to "git commands" 2009-08-12 16:14:41 -07:00
gitcli.txt Update "describe" documentation to match reality 2009-09-22 19:40:05 -07:00
gitcore-tutorial.txt Change mentions of "git programs" to "git commands" 2009-08-12 16:14:41 -07:00
gitcvs-migration.txt gitcvs-migration: Link to git-cvsimport documentation 2009-04-20 13:45:02 -07:00
gitdiffcore.txt Bust the ghost of long-defunct diffcore-pathspec. 2008-09-19 19:48:30 -07:00
gitglossary.txt Documentation: fix links to "everyday.html" 2008-11-14 21:48:10 -08:00
githooks.txt remove logical typo in documentation of sample update hook 2009-09-14 02:23:49 -07:00
gitignore.txt Documentation: clarify .gitattributes search 2009-04-07 21:58:25 -07:00
gitk.txt Documentation: Expand a couple of abbreviations 2009-03-03 21:42:44 -08:00
gitmodules.txt git-submodule: add support for --merge. 2009-06-03 00:09:16 -07:00
gitrepository-layout.txt Documentation: fix description for enabling hooks 2008-12-17 00:57:33 -08:00
gittutorial-2.txt tutorial-2: Update with the new "git commit" ouput 2009-01-21 00:15:34 -08:00
gittutorial.txt Makes some cleanup/review in gittutorial 2009-06-30 11:17:55 -07:00
gitworkflows.txt workflows documentation: fix link to git-request-pull[1] 2008-10-20 23:39:37 -07:00
glossary-content.txt Documentation: clarify "working tree" definition 2009-10-09 14:54:55 -07:00
howto-index.sh
i18n.txt Merge branch 'maint' to sync with GIT 1.6.0.6 2008-12-19 19:35:55 -08:00
install-doc-quick.sh
install-webdoc.sh
mailmap.txt Documentation: minor grammatical fixes in git-blame.txt. 2009-03-17 12:08:43 -07:00
Makefile Disable asciidoc 8.4.1+ semantics for {plus} and friends 2009-07-25 10:07:06 -07:00
manpage-1.72.xsl Documentation: move quieting params into manpage-base.xsl 2009-03-27 00:33:19 -07:00
manpage-base.xsl Documentation: use "spurious .sp" XSLT if DOCBOOK_SUPPRESS_SP is set 2009-04-01 11:02:42 -07:00
manpage-bold-literal.xsl Documentation: option to render literal text as bold for manpages 2009-03-27 00:33:20 -07:00
manpage-normal.xsl Documentation: move "spurious .sp" code into manpage-base.xsl 2009-03-27 00:33:19 -07:00
manpage-suppress-sp.xsl Documentation: use "spurious .sp" XSLT if DOCBOOK_SUPPRESS_SP is set 2009-04-01 11:02:42 -07:00
merge-config.txt mergetool--lib: add support for araxis merge 2009-05-24 11:21:05 -07:00
merge-options.txt merge-options.txt: Clarify merge --squash 2009-05-25 11:23:18 -07:00
merge-strategies.txt Grammar fixes to "merge" and "patch-id" docs 2009-03-25 17:28:33 -07:00
pretty-formats.txt pretty.c: add %f format specifier to format_commit_message() 2009-03-22 21:32:13 -07:00
pretty-options.txt Add --oneline that is a synonym to "--pretty=oneline --abbrev-commit" 2009-02-24 23:53:40 -08:00
pull-fetch-param.txt Documentation: simplify refspec format description 2009-01-25 22:25:20 -08:00
RelNotes-1.5.0.1.txt
RelNotes-1.5.0.2.txt
RelNotes-1.5.0.3.txt
RelNotes-1.5.0.4.txt
RelNotes-1.5.0.5.txt
RelNotes-1.5.0.6.txt
RelNotes-1.5.0.7.txt
RelNotes-1.5.0.txt
RelNotes-1.5.1.1.txt
RelNotes-1.5.1.2.txt
RelNotes-1.5.1.3.txt
RelNotes-1.5.1.4.txt
RelNotes-1.5.1.5.txt
RelNotes-1.5.1.6.txt
RelNotes-1.5.1.txt
RelNotes-1.5.2.1.txt
RelNotes-1.5.2.2.txt Documentation: Typos / spelling fixes in RelNotes 2009-03-03 21:40:36 -08:00
RelNotes-1.5.2.3.txt
RelNotes-1.5.2.4.txt
RelNotes-1.5.2.5.txt
RelNotes-1.5.2.txt
RelNotes-1.5.3.1.txt
RelNotes-1.5.3.2.txt
RelNotes-1.5.3.3.txt
RelNotes-1.5.3.4.txt
RelNotes-1.5.3.5.txt
RelNotes-1.5.3.6.txt
RelNotes-1.5.3.7.txt
RelNotes-1.5.3.8.txt
RelNotes-1.5.3.txt
RelNotes-1.5.4.1.txt
RelNotes-1.5.4.2.txt
RelNotes-1.5.4.3.txt
RelNotes-1.5.4.4.txt
RelNotes-1.5.4.5.txt
RelNotes-1.5.4.6.txt
RelNotes-1.5.4.7.txt GIT 1.5.4.7 2008-12-16 22:06:47 -08:00
RelNotes-1.5.4.txt
RelNotes-1.5.5.1.txt
RelNotes-1.5.5.2.txt
RelNotes-1.5.5.3.txt
RelNotes-1.5.5.4.txt
RelNotes-1.5.5.5.txt
RelNotes-1.5.5.6.txt GIT 1.5.5.6 2008-12-16 22:08:28 -08:00
RelNotes-1.5.5.txt
RelNotes-1.5.6.1.txt
RelNotes-1.5.6.2.txt
RelNotes-1.5.6.3.txt
RelNotes-1.5.6.4.txt
RelNotes-1.5.6.5.txt
RelNotes-1.5.6.6.txt GIT 1.5.6.6 2008-12-16 22:13:36 -08:00
RelNotes-1.5.6.txt
RelNotes-1.6.0.1.txt GIT 1.6.0.1 2008-08-24 14:47:24 -07:00
RelNotes-1.6.0.2.txt Documentation: Typos / spelling fixes in RelNotes 2009-03-03 21:40:36 -08:00
RelNotes-1.6.0.3.txt GIT 1.6.0.3 2008-10-21 13:37:42 -07:00
RelNotes-1.6.0.4.txt Fix typos in the documentation. 2008-11-27 01:00:45 -08:00
RelNotes-1.6.0.5.txt GIT 1.6.0.5 2008-12-07 15:11:54 -08:00
RelNotes-1.6.0.6.txt GIT 1.6.0.6 2008-12-19 19:27:35 -08:00
RelNotes-1.6.0.txt GIT 1.6.0 2008-08-17 11:42:10 -07:00
RelNotes-1.6.1.1.txt Documentation: Typos / spelling fixes in RelNotes 2009-03-03 21:40:36 -08:00
RelNotes-1.6.1.2.txt Documentation: Typos / spelling fixes in RelNotes 2009-03-03 21:40:36 -08:00
RelNotes-1.6.1.3.txt GIT 1.6.1.3 2009-02-07 00:51:47 -08:00
RelNotes-1.6.1.4.txt GIT 1.6.1.4 2009-05-03 15:29:31 -07:00
RelNotes-1.6.1.txt GIT 1.6.1 2008-12-24 19:41:08 -08:00
RelNotes-1.6.2.1.txt GIT 1.6.2.1 2009-03-15 13:05:05 -07:00
RelNotes-1.6.2.2.txt GIT 1.6.2.2 2009-04-02 12:34:16 -07:00
RelNotes-1.6.2.3.txt GIT 1.6.2.3 2009-04-12 15:57:58 -07:00
RelNotes-1.6.2.4.txt GIT 1.6.2.4 2009-04-19 17:34:26 -07:00
RelNotes-1.6.2.5.txt GIT 1.6.2.5 2009-05-03 16:54:14 -07:00
RelNotes-1.6.2.txt GIT 1.6.2 2009-03-03 23:37:19 -08:00
RelNotes-1.6.3.1.txt GIT 1.6.3.1 2009-05-12 22:30:29 -07:00
RelNotes-1.6.3.2.txt GIT 1.6.3.2 2009-06-03 22:47:48 -07:00
RelNotes-1.6.3.3.txt GIT 1.6.3.3 2009-06-21 21:15:50 -07:00
RelNotes-1.6.3.4.txt GIT 1.6.3.4 2009-07-28 23:59:30 -07:00
RelNotes-1.6.3.txt GIT 1.6.3 2009-05-06 18:16:40 -07:00
RelNotes-1.6.4.1.txt GIT 1.6.4.1 2009-08-21 20:16:10 -07:00
RelNotes-1.6.4.2.txt GIT 1.6.4.2 2009-08-29 14:31:01 -07:00
RelNotes-1.6.4.3.txt GIT 1.6.4.3 2009-09-13 01:28:13 -07:00
RelNotes-1.6.4.4.txt GIT 1.6.4.4 2009-09-16 14:53:26 -07:00
RelNotes-1.6.4.txt GIT 1.6.4 2009-07-29 00:32:42 -07:00
RelNotes-1.6.5.txt GIT 1.6.5 2009-10-10 00:05:19 -07:00
rev-list-options.txt Document 'git (rev-list|log) --merges' 2009-07-13 11:09:41 -07:00
SubmittingPatches SubmittingPatches: itemize and reflect upon well written changes 2009-04-28 00:40:00 -07:00
urls-remotes.txt Allow push and fetch urls to be different 2009-06-09 23:46:47 -07:00
urls.txt Add url.<base>.pushInsteadOf: URL rewriting for push only 2009-09-08 01:18:46 -07:00
user-manual.conf
user-manual.txt Change mentions of "git programs" to "git commands" 2009-08-12 16:14:41 -07:00