summaryrefslogtreecommitdiff
path: root/Documentation/git-fetch-pack.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/git-fetch-pack.txt')
-rw-r--r--Documentation/git-fetch-pack.txt96
1 files changed, 69 insertions, 27 deletions
diff --git a/Documentation/git-fetch-pack.txt b/Documentation/git-fetch-pack.txt
index 884a26bbf3..444b805d35 100644
--- a/Documentation/git-fetch-pack.txt
+++ b/Documentation/git-fetch-pack.txt
@@ -1,47 +1,102 @@
git-fetch-pack(1)
=================
-v0.1, July 2005
NAME
----
-git-fetch-pack - Receive missing objects from another repository.
+git-fetch-pack - Receive missing objects from another repository
SYNOPSIS
--------
-git-fetch-pack [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...] < <commit-list>
+[verse]
+'git fetch-pack' [--all] [--quiet|-q] [--keep|-k] [--thin] [--include-tag]
+ [--upload-pack=<git-upload-pack>]
+ [--depth=<n>] [--no-progress]
+ [-v] [<host>:]<directory> [<refs>...]
DESCRIPTION
-----------
-Invokes 'git-upload-pack' on a potentially remote repository,
+Usually you would want to use 'git fetch', which is a
+higher level wrapper of this command, instead.
+
+Invokes 'git-upload-pack' on a possibly remote repository
and asks it to send objects missing from this repository, to
update the named heads. The list of commits available locally
-is fed from the standard input, to be sent to 'git-upload-pack'
-running on the other end.
+is found out by scanning the local refs/ hierarchy and sent to
+'git-upload-pack' running on the other end.
-This command can be used only when the local side has a common
-(ancestor) commit with the remote head that is being pulled
-from. Use 'git-clone-pack' for that.
+This command degenerates to download everything to complete the
+asked refs from the remote side when the local side does not
+have a common ancestor commit.
OPTIONS
-------
+--all::
+ Fetch all remote refs.
+
+--stdin::
+ Take the list of refs from stdin, one per line. If there
+ are refs specified on the command line in addition to this
+ option, then the refs from stdin are processed after those
+ on the command line.
++
+If '--stateless-rpc' is specified together with this option then
+the list of refs must be in packet format (pkt-line). Each ref must
+be in a separate packet, and the list must end with a flush packet.
+
-q::
- Pass '-q' flag to 'git-unpack-objects'; this makes the
+--quiet::
+ Pass '-q' flag to 'git unpack-objects'; this makes the
cloning process less verbose.
---exec=<git-upload-pack>::
+-k::
+--keep::
+ Do not invoke 'git unpack-objects' on received data, but
+ create a single packfile out of it instead, and store it
+ in the object database. If provided twice then the pack is
+ locked against repacking.
+
+--thin::
+ Fetch a "thin" pack, which records objects in deltified form based
+ on objects not included in the pack to reduce network traffic.
+
+--include-tag::
+ If the remote side supports it, annotated tags objects will
+ be downloaded on the same connection as the other objects if
+ the object the tag references is downloaded. The caller must
+ otherwise determine the tags this option made available.
+
+--upload-pack=<git-upload-pack>::
Use this to specify the path to 'git-upload-pack' on the
remote side, if is not found on your $PATH.
Installations of sshd ignores the user's environment
setup scripts for login shells (e.g. .bash_profile) and
- your privately installed GIT may not be found on the system
+ your privately installed git may not be found on the system
default $PATH. Another workaround suggested is to set
up your $PATH in ".bashrc", but this flag is for people
who do not want to pay the overhead for non-interactive
shells by having a lean .bashrc file (they set most of
the things up in .bash_profile).
+--exec=<git-upload-pack>::
+ Same as \--upload-pack=<git-upload-pack>.
+
+--depth=<n>::
+ Limit fetching to ancestor-chains not longer than n.
+ 'git-upload-pack' treats the special depth 2147483647 as
+ infinite even if there is an ancestor-chain that long.
+
+--no-progress::
+ Do not show the progress.
+
+--check-self-contained-and-connected::
+ Output "connectivity-ok" if the received pack is
+ self-contained and connected.
+
+-v::
+ Run verbosely.
+
<host>::
A remote host that houses the repository. When this
part is specified, 'git-upload-pack' is invoked via
@@ -50,24 +105,11 @@ OPTIONS
<directory>::
The repository to sync from.
-<head>...::
+<refs>...::
The remote heads to update from. This is relative to
$GIT_DIR (e.g. "HEAD", "refs/heads/master"). When
unspecified, update from all heads the remote side has.
- However the program refuses to work if more than one
- remote head matches the specified heads. I am not sure
- what this means... Help!!!!!
-
-
-Author
-------
-Written by Linus Torvalds <torvalds@osdl.org>
-
-Documentation
---------------
-Documentation by Junio C Hamano.
-
GIT
---
-Part of the link:git.html[git] suite
+Part of the linkgit:git[1] suite