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