[PATCH] Documentation: clone/fetch/upload.
This adds documentation for 'smarter pull' family of commands. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
5f40520f8c
commit
8b3d9dc0e2
@ -9,7 +9,7 @@ git-clone-pack - Clones a repository by receiving packed objects.
|
|||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
--------
|
--------
|
||||||
'git-clone-pack' [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<heads>...]
|
'git-clone-pack' [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...]
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
-----------
|
-----------
|
||||||
@ -36,10 +36,15 @@ OPTIONS
|
|||||||
shells by having a lean .bashrc file (they set most of
|
shells by having a lean .bashrc file (they set most of
|
||||||
the things up in .bash_profile).
|
the things up in .bash_profile).
|
||||||
|
|
||||||
[<host>:]<directory::
|
<host>::
|
||||||
The (possibly remote) repository to clone from.
|
A remote host that houses the repository. When this
|
||||||
|
part is specified, 'git-upload-pack' is invoked via
|
||||||
|
ssh.
|
||||||
|
|
||||||
<heads>...::
|
<directory>::
|
||||||
|
The repository to sync from.
|
||||||
|
|
||||||
|
<head>...::
|
||||||
The heads to update. This is relative to $GIT_DIR
|
The heads to update. This is relative to $GIT_DIR
|
||||||
(e.g. "HEAD", "refs/heads/master"). When unspecified,
|
(e.g. "HEAD", "refs/heads/master"). When unspecified,
|
||||||
all heads are updated to match the remote repository.
|
all heads are updated to match the remote repository.
|
||||||
|
73
Documentation/git-fetch-pack.txt
Normal file
73
Documentation/git-fetch-pack.txt
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
git-fetch-pack(1)
|
||||||
|
=================
|
||||||
|
v0.1, July 2005
|
||||||
|
|
||||||
|
NAME
|
||||||
|
----
|
||||||
|
git-fetch-pack - Receive missing objects from another repository.
|
||||||
|
|
||||||
|
|
||||||
|
SYNOPSIS
|
||||||
|
--------
|
||||||
|
git-fetch-pack [-q] [--exec=<git-upload-pack>] [<host>:]<directory> [<head>...] < <commit-list>
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
-----------
|
||||||
|
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 fed from the standard input, to be 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.
|
||||||
|
|
||||||
|
|
||||||
|
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 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).
|
||||||
|
|
||||||
|
<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 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
|
40
Documentation/git-upload-pack.txt
Normal file
40
Documentation/git-upload-pack.txt
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
git-upload-pack(1)
|
||||||
|
==================
|
||||||
|
v0.1, July 2005
|
||||||
|
|
||||||
|
NAME
|
||||||
|
----
|
||||||
|
git-upload-pack - Send missing objects packed.
|
||||||
|
|
||||||
|
|
||||||
|
SYNOPSIS
|
||||||
|
--------
|
||||||
|
'git-upload-pack' <directory>
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
-----------
|
||||||
|
Invoked by 'git-clone-pack' and/or 'git-fetch-pack', learns what
|
||||||
|
objects the other side is missing, and sends them after packing.
|
||||||
|
|
||||||
|
This command is usually not invoked directly by the end user.
|
||||||
|
The UI for the protocol is on the 'git-fetch-pack' side, and the
|
||||||
|
program pair is meant to be used to pull updates from a remote
|
||||||
|
repository. For push operations, see 'git-send-pack'.
|
||||||
|
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
-------
|
||||||
|
<directory>::
|
||||||
|
The repository to sync from.
|
||||||
|
|
||||||
|
Author
|
||||||
|
------
|
||||||
|
Written by Linus Torvalds <torvalds@osdl.org>
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
--------------
|
||||||
|
Documentation by Junio C Hamano.
|
||||||
|
|
||||||
|
GIT
|
||||||
|
---
|
||||||
|
Part of the link:git.html[git] suite
|
11
fetch-pack.c
11
fetch-pack.c
@ -3,7 +3,8 @@
|
|||||||
#include "pkt-line.h"
|
#include "pkt-line.h"
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
|
|
||||||
static const char fetch_pack_usage[] = "git-fetch-pack [host:]directory [heads]* < mycommitlist";
|
static int quiet;
|
||||||
|
static const char fetch_pack_usage[] = "git-fetch-pack [-q] [--exec=upload-pack] [host:]directory [heads]* < mycommitlist";
|
||||||
static const char *exec = "git-upload-pack";
|
static const char *exec = "git-upload-pack";
|
||||||
|
|
||||||
static int find_common(int fd[2], unsigned char *result_sha1, unsigned char *remote)
|
static int find_common(int fd[2], unsigned char *result_sha1, unsigned char *remote)
|
||||||
@ -98,7 +99,8 @@ static int fetch_pack(int fd[2], int nr_match, char **match)
|
|||||||
dup2(fd[0], 0);
|
dup2(fd[0], 0);
|
||||||
close(fd[0]);
|
close(fd[0]);
|
||||||
close(fd[1]);
|
close(fd[1]);
|
||||||
execlp("git-unpack-objects", "git-unpack-objects", NULL);
|
execlp("git-unpack-objects", "git-unpack-objects",
|
||||||
|
quiet ? "-q" : NULL, NULL);
|
||||||
die("git-unpack-objects exec failed");
|
die("git-unpack-objects exec failed");
|
||||||
}
|
}
|
||||||
close(fd[0]);
|
close(fd[0]);
|
||||||
@ -134,7 +136,10 @@ int main(int argc, char **argv)
|
|||||||
char *arg = argv[i];
|
char *arg = argv[i];
|
||||||
|
|
||||||
if (*arg == '-') {
|
if (*arg == '-') {
|
||||||
/* Arguments go here */
|
if (!strncmp("--exec=", arg, 7)) {
|
||||||
|
exec = arg + 7;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
usage(fetch_pack_usage);
|
usage(fetch_pack_usage);
|
||||||
}
|
}
|
||||||
dest = arg;
|
dest = arg;
|
||||||
|
Loading…
Reference in New Issue
Block a user