1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
10 .de Sp \" Vertical space (when we can't use .PP)
16 .ie \\n(.$>=3 .ne \\$3
20 .TH "GIT-CVSSERVER" 1 "" "" ""
22 git-cvsserver \- A CVS server emulator for git
26 export CVS_SERVER=git\-cvsserver
27 \fIcvs\fR \-d :ext:user@server/path/repo\&.git co <HEAD_name>
33 This application is a CVS emulation layer for git\&.
36 It is highly functional\&. However, not all methods are implemented, and for those methods that are implemented, not all switches are implemented\&.
39 Testing has been done using both the CLI CVS client, and the Eclipse CVS plugin\&. Most functionality works fine with both of these clients\&.
44 Currently gitcvs only works over ssh connections\&.
50 Put server\&.pl somewhere useful on the same machine that is hosting your git repos
53 For each repo that you want accessible from CVS you need to edit config in the repo and add the following section\&.
58 logfile=/path/to/logfile
62 n\&.b\&. you need to ensure each user that is going to invoke server\&.pl has
63 write access to the log file\&.
67 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\&.
70 Clients should now be able to check out modules (where modules are the names of branches in git)\&. $ cvs co \-d mylocaldir master
73 .SH "ECLIPSE CVS CLIENT NOTES"
76 To get a checkout with the Eclipse CVS client:
80 Create a new project from CVS checkout, giving it repository and module
83 Context Menu\->Team\->Share Project...
86 Enter the repository and module information again and click Finish
89 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\&.
93 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\&.
95 .SH "CLIENTS KNOWN TO WORK"
98 CVS 1\&.12\&.9 on Debian CVS 1\&.11\&.17 on MacOSX (from Fink package) Eclipse 3\&.0, 3\&.1\&.2 on MacOSX (see Eclipse CVS Client Notes) TortoiseCVS
100 .SH "OPERATIONS SUPPORTED"
103 All the operations required for normal use are supported, including checkout, diff, status, update, log, add, remove, commit\&. Legacy monitoring operations are not supported (edit, watch and related)\&. Exports and tagging (tags and branches) are not supported at this stage\&.
106 The server will set the \-k mode to binary when relevant\&. In proper GIT tradition, the contents of the files are always respected\&. No keyword expansion or newline munging is supported\&.
111 git\-cvsserver depends on DBD::SQLite\&.
113 .SH "COPYRIGHT AND AUTHORS"
116 This program is copyright The Open University UK \- 2006\&.
119 Authors: Martyn Smith <martyn@catalyst\&.net\&.nz> Martin Langhoff <martin@catalyst\&.net\&.nz> with ideas and patches from participants of the git\-list <git@vger\&.kernel\&.org>\&.
124 Documentation by Martyn Smith <martyn@catalyst\&.net\&.nz> and Martin Langhoff <martin@catalyst\&.net\&.nz>Matthias Urlichs <smurf@smurf\&.noris\&.de>\&.
129 Part of the \fBgit\fR(7) suite