git-fetch-pack(1)
=================

NAME
----
git-fetch-pack - Receive missing objects from another repository


SYNOPSIS
--------
'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
-----------
Usually you would want to use linkgit:git-fetch[1] which is a
higher level wrapper of this command instead.

Invokes 'git-upload-pack' on a potentially remote repository,
and asks it to send objects missing from this repository, to
update the named heads.  The list of commits available locally
is found out by scanning local $GIT_DIR/refs/ and sent to
'git-upload-pack' running on the other end.

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.

\--quiet, \-q::
	Pass '-q' flag to 'git-unpack-objects'; this makes the
	cloning process less verbose.

\--keep, \-k::
	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::
	Spend extra cycles to minimize the number of objects to be sent.
	Use it on slower connection.

\--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
	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.

\--no-progress::
	Do not show the progress.

\-v::
	Run verbosely.

<host>::
	A remote host that houses the repository.  When this
	part is specified, 'git-upload-pack' is invoked via
	ssh.

<directory>::
	The repository to sync from.

<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.


Author
------
Written by Linus Torvalds <torvalds@osdl.org>

Documentation
--------------
Documentation by Junio C Hamano.

GIT
---
Part of the linkgit:git[7] suite
