Autogenerated man pages for v1.2.4-gac74
[git.git] / man1 / git-cvsimport.1
1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
2 .de Sh \" Subsection
3 .br
4 .if t .Sp
5 .ne 5
6 .PP
7 \fB\\$1\fR
8 .PP
9 ..
10 .de Sp \" Vertical space (when we can't use .PP)
11 .if t .sp .5v
12 .if n .sp
13 ..
14 .de Ip \" List item
15 .br
16 .ie \\n(.$>=3 .ne \\$3
17 .el .ne 3
18 .IP "\\$1" \\$2
19 ..
20 .TH "GIT-CVSIMPORT" 1 "" "" ""
21 .SH NAME
22 git-cvsimport \- Import a CVS repository into git
23 .SH "SYNOPSIS"
24
25 .nf
26 \fIgit\-cvsimport\fR [\-o <branch\-for\-HEAD>] [\-h] [\-v] [\-d <CVSROOT>] [\-s <subst>]
27               [\-p <options\-for\-cvsps>] [\-C <git_repository>] [\-i] [\-P <file>]
28               [\-m] [\-M regex] [<CVS_module>]
29 .fi
30
31 .SH "DESCRIPTION"
32
33
34 Imports a CVS repository into git\&. It will either create a new repository, or incrementally import into an existing one\&.
35
36
37 Splitting the CVS log into patch sets is done by \fIcvsps\fR\&. At least version 2\&.1 is required\&.
38
39
40 You should \fInever\fR do any work of your own on the branches that are created by git\-cvsimport\&. The initial import will create and populate a "master" branch from the CVS repository's main branch which you're free to work with; after that, you need to \fIgit merge\fR incremental imports, or any CVS branches, yourself\&.
41
42 .SH "OPTIONS"
43
44 .TP
45 \-d <CVSROOT>
46 The root of the CVS archive\&. May be local (a simple path) or remote; currently, only the :local:, :ext: and :pserver: access methods are supported\&.
47
48 .TP
49 \-C <target\-dir>
50 The git repository to import to\&. If the directory doesn't exist, it will be created\&. Default is the current directory\&.
51
52 .TP
53 \-i
54 Import\-only: don't perform a checkout after importing\&. This option ensures the working directory and index remain untouched and will not create them if they do not exist\&.
55
56 .TP
57 \-k
58 Kill keywords: will extract files with \-kk from the CVS archive to avoid noisy changesets\&. Highly recommended, but off by default to preserve compatibility with early imported trees\&.
59
60 .TP
61 \-u
62 Convert underscores in tag and branch names to dots\&.
63
64 .TP
65 \-o <branch\-for\-HEAD>
66 The \fIHEAD\fR branch from CVS is imported to the \fIorigin\fR branch within the git repository, as \fIHEAD\fR already has a special meaning for git\&. Use this option if you want to import into a different branch\&.
67
68 Use \fI\-o master\fR for continuing an import that was initially done by the old cvs2git tool\&.
69
70 .TP
71 \-p <options\-for\-cvsps>
72 Additional options for cvsps\&. The options \fI\-u\fR and \fI\-A\fR are implicit and should not be used here\&.
73
74 If you need to pass multiple options, separate them with a comma\&.
75
76 .TP
77 \-P <cvsps\-output\-file>
78 Instead of calling cvsps, read the provided cvsps output file\&. Useful for debugging or when cvsps is being handled outside cvsimport\&.
79
80 .TP
81 \-m
82 Attempt to detect merges based on the commit message\&. This option will enable default regexes that try to capture the name source branch name from the commit message\&.
83
84 .TP
85 \-M <regex>
86 Attempt to detect merges based on the commit message with a custom regex\&. It can be used with \-m to also see the default regexes\&. You must escape forward slashes\&.
87
88 .TP
89 \-v
90 Verbosity: let \fIcvsimport\fR report what it is doing\&.
91
92 .TP
93 <CVS_module>
94 The CVS module you want to import\&. Relative to <CVSROOT>\&.
95
96 .TP
97 \-h
98 Print a short usage message and exit\&.
99
100 .TP
101 \-z <fuzz>
102 Pass the timestamp fuzz factor to cvsps\&.
103
104 .TP
105 \-s <subst>
106 Substitute the character "/" in branch names with <subst>
107
108 .TP
109 \-A <author\-conv\-file>
110 CVS by default uses the unix username when writing its commit logs\&. Using this option and an author\-conv\-file in this format
111
112
113 .nf
114         exon=Andreas Ericsson <ae@op5\&.se>
115         spawn=Simon Pawn <spawn@frog\-pond\&.org>
116
117 .fi
118 git\-cvsimport will make it appear as those authors had their GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL set properly all along\&.
119
120 For convenience, this data is saved to $GIT_DIR/cvs\-authors each time the \-A option is provided and read from that same file each time git\-cvsimport is run\&.
121
122 It is not recommended to use this feature if you intend to export changes back to CVS again later with git\-link[1]::git\-cvsexportcommit\&.
123
124 .SH "OUTPUT"
125
126
127 If \fI\-v\fR is specified, the script reports what it is doing\&.
128
129
130 Otherwise, success is indicated the Unix way, i\&.e\&. by simply exiting with a zero exit status\&.
131
132 .SH "AUTHOR"
133
134
135 Written by Matthias Urlichs <smurf@smurf\&.noris\&.de>, with help from various participants of the git\-list <git@vger\&.kernel\&.org>\&.
136
137 .SH "DOCUMENTATION"
138
139
140 Documentation by Matthias Urlichs <smurf@smurf\&.noris\&.de>\&.
141
142 .SH "GIT"
143
144
145 Part of the \fBgit\fR(7) suite
146