| '\" t |
| .\" Title: git-upload-pack |
| .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] |
| .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> |
| .\" Date: 03/07/2022 |
| .\" Manual: Git Manual |
| .\" Source: Git 2.35.1.415.gc2162907e9 |
| .\" Language: English |
| .\" |
| .TH "GIT\-UPLOAD\-PACK" "1" "03/07/2022" "Git 2\&.35\&.1\&.415\&.gc21629" "Git Manual" |
| .\" ----------------------------------------------------------------- |
| .\" * Define some portability stuff |
| .\" ----------------------------------------------------------------- |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| .\" http://bugs.debian.org/507673 |
| .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| .ie \n(.g .ds Aq \(aq |
| .el .ds Aq ' |
| .\" ----------------------------------------------------------------- |
| .\" * set default formatting |
| .\" ----------------------------------------------------------------- |
| .\" disable hyphenation |
| .nh |
| .\" disable justification (adjust text to left margin only) |
| .ad l |
| .\" ----------------------------------------------------------------- |
| .\" * MAIN CONTENT STARTS HERE * |
| .\" ----------------------------------------------------------------- |
| .SH "NAME" |
| git-upload-pack \- Send objects packed back to git\-fetch\-pack |
| .SH "SYNOPSIS" |
| .sp |
| .nf |
| \fIgit\-upload\-pack\fR [\-\-[no\-]strict] [\-\-timeout=<n>] [\-\-stateless\-rpc] |
| [\-\-advertise\-refs] <directory> |
| .fi |
| .sp |
| .SH "DESCRIPTION" |
| .sp |
| Invoked by \fIgit fetch\-pack\fR, learns what objects the other side is missing, and sends them after packing\&. |
| .sp |
| This command is usually not invoked directly by the end user\&. The UI for the protocol is on the \fIgit fetch\-pack\fR side, and the program pair is meant to be used to pull updates from a remote repository\&. For push operations, see \fIgit send\-pack\fR\&. |
| .SH "OPTIONS" |
| .PP |
| \-\-[no\-]strict |
| .RS 4 |
| Do not try <directory>/\&.git/ if <directory> is no Git directory\&. |
| .RE |
| .PP |
| \-\-timeout=<n> |
| .RS 4 |
| Interrupt transfer after <n> seconds of inactivity\&. |
| .RE |
| .PP |
| \-\-stateless\-rpc |
| .RS 4 |
| Perform only a single read\-write cycle with stdin and stdout\&. This fits with the HTTP POST request processing model where a program may read the request, write a response, and must exit\&. |
| .RE |
| .PP |
| \-\-http\-backend\-info\-refs |
| .RS 4 |
| Used by |
| \fBgit-http-backend\fR(1) |
| to serve up |
| \fB$GIT_URL/info/refs?service=git\-upload\-pack\fR |
| requests\&. See "Smart Clients" in |
| \m[blue]\fBthe HTTP transfer protocols\fR\m[]\&\s-2\u[1]\d\s+2 |
| documentation and "HTTP Transport" in |
| \m[blue]\fBthe Git Wire Protocol, Version 2\fR\m[]\&\s-2\u[2]\d\s+2 |
| documentation\&. Also understood by |
| \fBgit-receive-pack\fR(1)\&. |
| .RE |
| .PP |
| <directory> |
| .RS 4 |
| The repository to sync from\&. |
| .RE |
| .SH "ENVIRONMENT" |
| .PP |
| \fBGIT_PROTOCOL\fR |
| .RS 4 |
| Internal variable used for handshaking the wire protocol\&. Server admins may need to configure some transports to allow this variable to be passed\&. See the discussion in |
| \fBgit\fR(1)\&. |
| .RE |
| .SH "SEE ALSO" |
| .sp |
| \fBgitnamespaces\fR(7) |
| .SH "GIT" |
| .sp |
| Part of the \fBgit\fR(1) suite |
| .SH "NOTES" |
| .IP " 1." 4 |
| the HTTP transfer protocols |
| .RS 4 |
| \%git-htmldocs/technical/http-protocol.html |
| .RE |
| .IP " 2." 4 |
| the Git Wire Protocol, Version 2 |
| .RS 4 |
| \%git-htmldocs/technical/protocol-v2.html |
| .RE |