git-clone-pack(1)
=================
v0.1, July 2005

NAME
----
git-clone-pack - Clones a repository by receiving packed objects.


SYNOPSIS
--------
'git-clone-pack' [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...]

DESCRIPTION
-----------
Clones a repository into the current repository by invoking
'git-upload-pack', possibly on the remote host via ssh, in
the named repository, and invoking 'git-unpack-objects' locally
to receive the pack.

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

--exec=<git-upload-pack>::
	Use this to specify the path to 'git-upload-pack' on the
	remote side, if it is not found on your $PATH.
	Installations of sshd ignore 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).

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

<head>...::
	The heads to update.  This is relative to $GIT_DIR
	(e.g. "HEAD", "refs/heads/master").  When unspecified,
	all heads are updated to match the remote repository.


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

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


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

