@matheusbsbs / matheus-bagliano / commits / 7c98213abc
Fork 0

Add warning about known issues to documentation of cvsimport

The described issues are compiled from the tests by Michael Haggerty and me. Because it is not apparent that these can be fixed anytime soon at least warn unwary users not to rely on the inbuilt cvsimport to much. Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Heiko Voigt committed Mar 23, 2009 at 20:53 UTC 7c98213abc2a834f16646b9fe842f6e63c7ddb81
1 file changed +34
Documentation/git-cvsimport.txt
+34
@@ -24,6 +24,9 @@ repository, or incrementally import into an existing one.
24 Splitting the CVS log into patch sets is done by 'cvsps'.
25 At least version 2.1 is required.
26
27 +*WARNING:* for certain situations the import leads to incorrect results.
28 +Please see the section <<issues,ISSUES>> for further reference.
29 +
30 You should *never* do any work of your own on the branches that are
31 created by 'git-cvsimport'. By default initial import will create and populate a
32 "master" branch from the CVS repository's main branch which you're free
@@ -164,6 +167,37 @@ If '-v' is specified, the script reports what it is doing.
167 Otherwise, success is indicated the Unix way, i.e. by simply exiting with
168 a zero exit status.
169
170 +[[issues]]
171 +ISSUES
172 +------
173 +Problems related to timestamps:
174 +
175 + * If timestamps of commits in the cvs repository are not stable enough
176 + to be used for ordering commits
177 + * If any files were ever "cvs import"ed more than once (e.g., import of
178 + more than one vendor release)
179 + * If the timestamp order of different files cross the revision order
180 + within the commit matching time window
181 +
182 +Problems related to branches:
183 +
184 + * Branches on which no commits have been made are not imported
185 + * All files from the branching point are added to a branch even if
186 + never added in cvs
187 + * files added to the source branch *after* a daughter branch was
188 + created: If previously no commit was made on the daugther branch they
189 + will erroneously be added to the daughter branch in git
190 +
191 +Problems related to tags:
192 +
193 +* Multiple tags on the same revision are not imported
194 +
195 +If you suspect that any of these issues may apply to the repository you
196 +want to import consider using these alternative tools which proved to be
197 +more stable in practise:
198 +
199 +* cvs2git (part of cvs2svn), `http://cvs2svn.tigris.org`
200 +* parsecvs, `http://cgit.freedesktop.org/~keithp/parsecvs`
201
202 Author
203 ------