Autogenerated man pages for v1.2.4-g9201
authorJunio C Hamano <junio@hera.kernel.org>
Sun, 5 Mar 2006 10:51:25 +0000 (10:51 +0000)
committerJunio C Hamano <junio@hera.kernel.org>
Sun, 5 Mar 2006 10:51:25 +0000 (10:51 +0000)
man1/git-checkout-index.1
man1/git-cvsserver.1
man1/git-pack-objects.1
man1/git-pack-redundant.1
man1/git-prune-packed.1
man1/git-repack.1
man1/git-rev-list.1

index c167462f9c377348c2198cbc7b19f68de81e7963..20c04a9c46a85b3ac00d2e2c2e074a3ba1a3a36d 100755 (executable)
@@ -23,8 +23,10 @@ git-checkout-index \- Copy files from the index to the working directory
 .SH "SYNOPSIS"
 
 .nf
-git\-checkout\-index [\-u] [\-q] [\-a] [\-f] [\-n] [\-\-prefix=<string>]
-                   [\-\-stage=<number>] [\-\-] <file>...
+\fIgit\-checkout\-index\fR [\-u] [\-q] [\-a] [\-f] [\-n] [\-\-prefix=<string>]
+                   [\-\-stage=<number>]
+                   [\-z] [\-\-stdin]
+                   [\-\-] [<file>]*
 .fi
 
 .SH "DESCRIPTION"
@@ -62,6 +64,14 @@ When creating files, prepend <string> (usually a directory including a trailing
 \-\-stage=<number>
 Instead of checking out unmerged entries, copy out the files from named stage\&. <number> must be between 1 and 3\&.
 
+.TP
+\-\-stdin
+Instead of taking list of paths from the command line, read list of paths from the standard input\&. Paths are separated by LF (i\&.e\&. one path per line) by default\&.
+
+.TP
+\-z
+Only meaningful with \-\-stdin; paths are separated with NUL character instead of LF\&.
+
 .TP
 --
 Do not interpret any more arguments as options\&.
@@ -78,8 +88,10 @@ Intuitiveness is not the goal here\&. Repeatability is\&. The reason for the "no
 .IP
 $ find \&. \-name '*\&.h' \-print0 | xargs \-0 git\-checkout\-index \-f \-\-
 
-which will force all existing *\&.h files to be replaced with their cached copies\&. If an empty command line implied "all", then this would force\-refresh everything in the index, which was not the point\&.
+which will force all existing *\&.h files to be replaced with their cached copies\&. If an empty command line implied "all", then this would force\-refresh everything in the index, which was not the point\&. But since git\-checkout\-index accepts \-\-stdin it would be faster to use:
 
+.IP
+$ find \&. \-name '*\&.h' \-print0 | git\-checkout\-index \-f \-z \-\-stdin
 
 The \-\- is just a good idea when you know the rest will be filenames; it will prevent problems with a filename of, for example, \-a\&. Using \-\- is probably a good policy in scripts\&.
 
index ad08f74e7fee04e04167b18a84668e8ee4c9a3c7..78626e19c76cf723fdb70f52324e31e50de1f94e 100755 (executable)
@@ -41,13 +41,35 @@ Testing has been done using both the CLI CVS client, and the Eclipse CVS plugin\
 .SH "LIMITATIONS"
 
 
-Currently gitcvs only works over ssh connections\&.
+Currently cvsserver works over SSH connections for read/write clients, and over pserver for anonymous CVS access\&.
+
+
+CVS clients cannot tag, branch or perform GIT merges\&.
 
 .SH "INSTALLATION"
 
 .TP 3
 1.
-Put server\&.pl somewhere useful on the same machine that is hosting your git repos
+If you are going to offer anonymous CVS access via pserver, add a line in /etc/inetd\&.conf like
+
+.nf
+cvspserver stream tcp nowait nobody git\-cvsserver pserver
+.fi
+
+.nf
+Note: In some cases, you need to pass the 'pserver' argument twice for
+git\-cvsserver to see it\&. So the line would look like
+.fi
+
+.nf
+cvspserver stream tcp nowait nobody git\-cvsserver pserver pserver
+.fi
+
+.nf
+No special setup is needed for SSH access, other than having GIT tools
+in the PATH\&. If you have clients that do not accept the CVS_SERVER
+env variable, you can rename git\-cvsserver to cvs\&.
+.fi
 .TP
 2.
 For each repo that you want accessible from CVS you need to edit config in the repo and add the following section\&.
@@ -55,19 +77,42 @@ For each repo that you want accessible from CVS you need to edit config in the r
 .nf
 [gitcvs]
      enabled=1
+     # optional for debugging
      logfile=/path/to/logfile
 .fi
 
 .nf
-n\&.b\&. you need to ensure each user that is going to invoke server\&.pl has
-write access to the log file\&.
+Note: you need to ensure each user that is going to invoke git\-cvsserver has
+write access to the log file and to the git repository\&. When offering anon
+access via pserver, this means that the nobody user should have write access
+to at least the sqlite database at the root of the repository\&.
 .fi
 .TP
 3.
-On each client machine you need to set the following variables\&. CVSROOT should be set as per normal, but the directory should point at the appropriate git repo\&. CVS_SERVER should be set to the server\&.pl script that has been put on the remote machine\&.
+On the client machine you need to set the following variables\&. CVSROOT should be set as per normal, but the directory should point at the appropriate git repo\&. For example:
+
+.nf
+For SSH access, CVS_SERVER should be set to git\-cvsserver
+.fi
+
+.nf
+Example:
+.fi
+
+.nf
+export CVSROOT=:ext:user@server:/var/git/project\&.git
+export CVS_SERVER=git\-cvsserver
+.fi
 .TP
 4.
-Clients should now be able to check out modules (where modules are the names of branches in git)\&. $ cvs co \-d mylocaldir master
+For SSH clients that will make commits, make sure their \&.bashrc file sets the GIT_AUTHOR and GIT_COMMITTER variables\&.
+.TP
+5.
+Clients should now be able to check out the project\&. Use the CVS \fImodule\fR name to indicate what GIT \fIhead\fR you want to check out\&. Example:
+
+.nf
+cvs co \-d project\-master master
+.fi
 .LP
 
 .SH "ECLIPSE CVS CLIENT NOTES"
@@ -77,20 +122,23 @@ To get a checkout with the Eclipse CVS client:
 
 .TP 3
 1.
-Create a new project from CVS checkout, giving it repository and module
+Select "Create a new project \-> From CVS checkout"
 .TP
 2.
-Context Menu\->Team\->Share Project...
+Create a new location\&. See the notes below for details on how to choose the right protocol\&.
 .TP
 3.
-Enter the repository and module information again and click Finish
+Browse the \fImodules\fR available\&. It will give you a list of the heads in the repository\&. You will not be able to browse the tree from there\&. Only the heads\&.
 .TP
 4.
-The Synchronize view appears\&. Untick "launch commit wizard" to avoid committing the \&.project file, and select HEAD as the tag to synchronize to\&. Update all incoming changes\&.
+Pick \fIHEAD\fR when it asks what branch/tag to check out\&. Untick the "launch commit wizard" to avoid committing the \&.project file\&.
 .LP
 
 
-Note that most versions of Eclipse ignore CVS_SERVER (which you can set in the Preferences\->Team\->CVS\->ExtConnection pane), so you may have to rename, alias or symlink git\-cvsserver to \fIcvs\fR on the server\&.
+Protocol notes: If you are using anonymous acces via pserver, just select that\&. Those using SSH access should choose the \fIext\fR protocol, and configure \fIext\fR access on the Preferences\->Team\->CVS\->ExtConnection pane\&. Set CVS_SERVER to \fIgit\-cvsserver\fR\&. Not that password support is not good when using \fIext\fR, you will definitely want to have SSH keys setup\&.
+
+
+Alternatively, you can just use the non\-standard extssh protocol that Eclipse offer\&. In that case CVS_SERVER is ignored, and you will have to replace the cvs utility on the server with git\-cvsserver or manipulate your \&.bashrc so that calling \fIcvs\fR effectively calls git\-cvsserver\&.
 
 .SH "CLIENTS KNOWN TO WORK"
 
@@ -121,7 +169,7 @@ Authors: Martyn Smith <martyn@catalyst\&.net\&.nz> Martin Langhoff <martin@catal
 .SH "DOCUMENTATION"
 
 
-Documentation by Martyn Smith <martyn@catalyst\&.net\&.nz> and Martin Langhoff <martin@catalyst\&.net\&.nz>Matthias Urlichs <smurf@smurf\&.noris\&.de>\&.
+Documentation by Martyn Smith <martyn@catalyst\&.net\&.nz> and Martin Langhoff <martin@catalyst\&.net\&.nz> Matthias Urlichs <smurf@smurf\&.noris\&.de>\&.
 
 .SH "GIT"
 
index e20e8c757f9145f671058afaaf666fdb6c0122b1..c48e9489beab765853ed401878e37db64f53f1cb 100755 (executable)
@@ -89,7 +89,7 @@ Written by Linus Torvalds <torvalds@osdl\&.org>
 
 Documentation by Junio C Hamano
 
-.SH "SEE-ALSO"
+.SH "SEE ALSO"
 
 
 \fBgit\-repack\fR(1) \fBgit\-prune\-packed\fR(1)
index 58e2ed41ccf105f470e9049e98591b195e12c93a..807cd7c044ba8de6193fa44bc99344895798835d 100755 (executable)
@@ -23,18 +23,18 @@ git-pack-redundant \- Program used to find redundant pack files.
 .SH "SYNOPSIS"
 
 
-git\-pack\-redundant [ \-\-verbose ] [ \-\-alt\-odb ] < \-\-all | \&.pack filename ... >
+\fIgit\-pack\-redundant [ \-\-verbose ] [ \-\-alt\-odb ] < \-\-all | \&.pack filename ... >\fR
 
 .SH "DESCRIPTION"
 
 
-This program computes which packs in your repository are redundant\&. The output is suitable for piping to xargs rm if you are in the root of the repository\&.
+This program computes which packs in your repository are redundant\&. The output is suitable for piping to \fIxargs rm\fR if you are in the root of the repository\&.
 
 
 git\-pack\-redundant accepts a list of objects on standard input\&. Any objects given will be ignored when checking which packs are required\&. This makes the following command useful when wanting to remove packs which contain unreachable objects\&.
 
 
-git\-fsck\-objects \-\-full \-\-unreachable | cut \-d \-f3 | git\-pack\-redundant \-\-all | xargs rm
+git\-fsck\-objects \-\-full \-\-unreachable | cut \-d \fI \fR \-f3 | git\-pack\-redundant \-\-all | xargs rm
 
 .SH "OPTIONS"
 
@@ -53,14 +53,14 @@ Outputs some statistics to stderr\&. Has a small performance penalty\&.
 .SH "AUTHOR"
 
 
-Written by Lukas Sandstr&#246;m <lukass@etek\&.chalmers\&.se>
+Written by Lukas Sandström <lukass@etek\&.chalmers\&.se>
 
 .SH "DOCUMENTATION"
 
 
-Documentation by Lukas Sandstr&#246;m <lukass@etek\&.chalmers\&.se>
+Documentation by Lukas Sandström <lukass@etek\&.chalmers\&.se>
 
-.SH "SEE-ALSO"
+.SH "SEE ALSO"
 
 
 \fBgit\-pack\-objects\fR(1) \fBgit\-repack\fR(1) \fBgit\-prune\-packed\fR(1)
index dacb090f2fbba2770caef964af486a2e9e6c6242..93257071d8b366d0c793640c2372e00b95a33f80 100755 (executable)
@@ -23,7 +23,7 @@ git-prune-packed \- Program used to remove the extra object files that are now r
 .SH "SYNOPSIS"
 
 
-git\-prune\-packed [\-n]
+\fIgit\-prune\-packed\fR [\-n]
 
 .SH "DESCRIPTION"
 
@@ -55,7 +55,7 @@ Written by Linus Torvalds <torvalds@osdl\&.org>
 
 Documentation by Ryan Anderson <ryan@michonline\&.com>
 
-.SH "SEE-ALSO"
+.SH "SEE ALSO"
 
 
 \fBgit\-pack\-objects\fR(1) \fBgit\-repack\fR(1)
index 80c006e73610ff861a2cec2f0fa13037f4d3f23d..edf251721b7fefa727e5bc24bdf5a4272704478e 100755 (executable)
@@ -72,7 +72,7 @@ Written by Linus Torvalds <torvalds@osdl\&.org>
 
 Documentation by Ryan Anderson <ryan@michonline\&.com>
 
-.SH "SEE-ALSO"
+.SH "SEE ALSO"
 
 
 \fBgit\-pack\-objects\fR(1) \fBgit\-prune\-packed\fR(1)
index c8822ddb7ae10eedb70b830a3c7292c18cd5652f..17a556747daeae86c3ff48e08be5679c97051007 100755 (executable)
@@ -30,7 +30,7 @@ git-rev-list \- Lists commit objects in reverse chronological order
              [ \-\-no\-merges ]
              [ \-\-remove\-empty ]
              [ \-\-all ]
-             [ [ \-\-merge\-order [ \-\-show\-breaks ] ] | [ \-\-topo\-order ] ]
+             [ \-\-topo\-order ]
              [ \-\-parents ]
              [ [\-\-objects | \-\-objects\-edge] [ \-\-unpacked ] ]
              [ \-\-pretty | \-\-header ]
@@ -99,49 +99,11 @@ Pretend as if all the refs in $GIT_DIR/refs/ are listed on the command line as <
 \-\-topo\-order
 By default, the commits are shown in reverse chronological order\&. This option makes them appear in topological order (i\&.e\&. descendant commits are shown before their parents)\&.
 
-.TP
-\-\-merge\-order
-When specified the commit history is decomposed into a unique sequence of minimal, non\-linear epochs and maximal, linear epochs\&. Non\-linear epochs are then linearised by sorting them into merge order, which is described below\&.
-
-Maximal, linear epochs correspond to periods of sequential development\&. Minimal, non\-linear epochs correspond to periods of divergent development followed by a converging merge\&. The theory of epochs is described in more detail at http://blackcubes\&.dyndns\&.org/epoch/: \fIhttp://blackcubes.dyndns.org/epoch/\fR\&.
-
-The merge order for a non\-linear epoch is defined as a linearisation for which the following invariants are true:
-
-.RS
-.TP 3
-1.
-if a commit P is reachable from commit N, commit P sorts after commit N in the linearised list\&.
-.TP
-2.
-if Pi and Pj are any two parents of a merge M (with i < j), then any commit N, such that N is reachable from Pj but not reachable from Pi, sorts before all commits reachable from Pi\&.
-
-Invariant 1 states that later commits appear before earlier commits they are derived from\&.
-
-Invariant 2 states that commits unique to "later" parents in a merge, appear before all commits from "earlier" parents of a merge\&.
-.LP
-.RE
-.IP
-
-.TP
-\-\-show\-breaks
-Each item of the list is output with a 2\-character prefix consisting of one of: (|), (^), (=) followed by a space\&.
-
-Commits marked with (=) represent the boundaries of minimal, non\-linear epochs and correspond either to the start of a period of divergent development or to the end of such a period\&.
-
-Commits marked with (|) are direct parents of commits immediately preceding the marked commit in the list\&.
-
-Commits marked with (^) are not parents of the immediately preceding commit\&. These "breaks" represent necessary discontinuities implied by trying to represent an arbitrary DAG in a linear form\&.
-
-\-\-show\-breaks is only valid if \-\-merge\-order is also specified\&.
-
 .SH "AUTHOR"
 
 
 Written by Linus Torvalds <torvalds@osdl\&.org>
 
-
-Original \fI\-\-merge\-order\fR logic by Jon Seymour <jon\&.seymour@gmail\&.com>
-
 .SH "DOCUMENTATION"