ncvs.FreeBSD.org is now the main repository host.
Describe how to commit on ncvs.FreeBSD.org using remote CVS. Add a note to NOT use the main repository host as your personal cvs server, as inspired by peter's mail to developers@ a while back. Refer to the cvsup distribution method and cvsup-master instead and give an example of an "fcvs" alias, as suggested by many committers. Reword or remove various paragraphs about not modifiying the repository yourself, which is no longer possible, since only repomeisters have access to ncvs.FreeBSD.org. Remove the paragraph about CVSUMASK, which no longer applies.
This commit is contained in:
parent
9fb48ee2dd
commit
d558fc6c47
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=14755
1 changed files with 54 additions and 41 deletions
|
@ -50,17 +50,19 @@
|
|||
<tbody>
|
||||
<row>
|
||||
<entry><emphasis>Main Repository Host</emphasis></entry>
|
||||
<entry><hostid>freefall.FreeBSD.org</hostid></entry>
|
||||
<entry><hostid>ncvs.FreeBSD.org</hostid></entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><emphasis>Login Methods</emphasis></entry>
|
||||
<entry>&man.ssh.1;</entry>
|
||||
<entry>&man.ssh.1;, protocol 2 only</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><emphasis>Main CVSROOT</emphasis></entry>
|
||||
<entry><filename>/home/ncvs</filename></entry>
|
||||
<entry>
|
||||
<hostid role="fqdn">ncvs.FreeBSD.org</hostid><literal>:</literal><filename>/home/ncvs</filename>
|
||||
</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
|
@ -83,8 +85,9 @@
|
|||
</informaltable>
|
||||
|
||||
<para>It is required that you use &man.ssh.1; or &man.telnet.1;
|
||||
with Kerberos 5 to connect to the repository hosts. These are
|
||||
generally more secure than plain &man.telnet.1; or
|
||||
with Kerberos 5 to connect to the project hosts and only
|
||||
&man.ssh.1;, protocol 2 is allowed connecting to the repository
|
||||
host. These are generally more secure than plain &man.telnet.1; or
|
||||
&man.rlogin.1; since credential negotiation will always be
|
||||
encrypted. All traffic is encrypted by default with &man.ssh.1;.
|
||||
With utilities like &man.ssh-agent.1; and &man.scp.1; also
|
||||
|
@ -160,47 +163,57 @@
|
|||
<para>It is assumed that you are already familiar with the basic operation
|
||||
of CVS.</para>
|
||||
|
||||
<para>The &a.cvs;
|
||||
<para>The CVS repository is hosted on the repository machines. The &a.cvs;
|
||||
are the <quote>owners</quote> of the CVS repository and are
|
||||
responsible for any and <emphasis>all</emphasis> direct
|
||||
modification of it for the purposes of cleanup or fixing some
|
||||
grievous abuse of CVS by a committer. No one else should
|
||||
attempt to touch the repository directly. Should you cause some
|
||||
repository accident, say a bad <command>cvs import</command> or <command>cvs tag</command> operation, do
|
||||
<emphasis role="bold">not</emphasis> attempt to fix it yourself!
|
||||
Mail the &a.cvs; (or call one of them) and report the problem to
|
||||
one of them instead. The only ones allowed to directly fiddle
|
||||
the repository bits are the repomeisters.</para>
|
||||
responsible for direct modification of it for the purposes of
|
||||
cleanup or fixing some grievous abuse of CVS by a committer.
|
||||
Should you cause some
|
||||
repository accident, say a bad <command>cvs import</command> or <command>cvs tag</command> operation,
|
||||
mail the &a.cvs; (or call one of them) and report the problem to
|
||||
one of them. The only ones able to directly fiddle
|
||||
the repository bits on the repository hosts are the repomeisters.
|
||||
There are no login shells on
|
||||
<hostid role="fqdn">ncvs.FreeBSD.org</hostid> installed, except
|
||||
for the repomeisters.</para>
|
||||
|
||||
<para>CVS operations are usually done by logging into
|
||||
<hostid>freefall</hostid>, making sure the
|
||||
<envar>CVSROOT</envar> environment variable is set to
|
||||
<filename>/home/ncvs</filename>, and then doing the appropriate
|
||||
<para>CVS operations are done remotely by setting the
|
||||
<envar>CVSROOT</envar> environment variable to
|
||||
<hostid role="fqdn">ncvs.FreeBSD.org</hostid><literal>:</literal><filename>/home/ncvs</filename>
|
||||
and the <envar>CVS_RSH</envar> variable to
|
||||
<command>ssh</command>
|
||||
and then doing the appropriate
|
||||
check-out/check-in operations. If you wish to add
|
||||
something which is wholly new (like contrib-ified
|
||||
sources, etc), <command>cvs import</command> should be used.
|
||||
Refer to the &man.cvs.1; manual page for usage.</para>
|
||||
|
||||
<para>Note that when you use CVS on <hostid>freefall</hostid>, you
|
||||
should set your <literal>umask</literal> to <literal>2</literal>,
|
||||
as well as setting the <envar>CVSUMASK</envar> environment
|
||||
variable to <literal>2</literal>. This ensures that any new
|
||||
files created by <command>cvs add</command> will have the correct
|
||||
permissions. If you add a file or directory and discover that the
|
||||
file in the repository has incorrect permissions (specifically,
|
||||
all files in the repository should be group writable by group
|
||||
<literal>ncvs</literal>), contact one of the repository meisters
|
||||
as described below.</para>
|
||||
<note>
|
||||
<para>Please do <emphasis>not</emphasis> use
|
||||
<command>cvs checkout</command> or
|
||||
<command>update</command> with the official repository machine set
|
||||
as the CVS Root for keeping your source tree up to date.
|
||||
Remote CVS is not optimized for network distribution
|
||||
and requires a big work/administrative overhead on the server side.
|
||||
Please use our advanced <command>cvsup</command> distribution
|
||||
method for obtaining the repository bits, and only do the actual
|
||||
<command>commit</command> operation on the repository host.
|
||||
We provide an extensive cvsup replication network for this purpose,
|
||||
as well as give access to <hostid>cvsup-master</hostid> if you
|
||||
really need to stay current to the latest changes.
|
||||
<hostid>cvsup-master</hostid> has got the horsepower to deal with
|
||||
this, the repository master server does not. &a.jdp; is in
|
||||
charge of <hostid>cvsup-master</hostid>.
|
||||
</para>
|
||||
|
||||
<para>Many committers define an alias <command>fcvs</command>
|
||||
which aliases to
|
||||
<quote><command>cvs -d
|
||||
xxx@ncvs.FreeBSD.org:/home/ncvs</command></quote>
|
||||
for this purpose. That way they do all CVS operations
|
||||
locally and use <command>fcvs commit</command> for committing
|
||||
to the official CVS tree.</para>
|
||||
</note>
|
||||
|
||||
<para>If you are familiar with remote CVS and consider yourself
|
||||
pretty studly with CVS in general, you can also do CVS
|
||||
operations directly from your own machine and local working
|
||||
sources. Just remember to set <envar>CVS_RSH</envar> to
|
||||
<literal>ssh</literal> so that you are using a relatively
|
||||
secure and reliable transport. If you have no idea what any of
|
||||
the above even means, on the other hand, then please stick with
|
||||
logging into <hostid>freefall</hostid> and applying your diffs
|
||||
with &man.patch.1;.</para>
|
||||
|
||||
<para>If you need to use CVS <command>add</command> and
|
||||
<command>delete</command> operations in a manner that is
|
||||
|
@ -579,11 +592,11 @@
|
|||
</itemizedlist>
|
||||
|
||||
<para>You will almost certainly get a conflict because
|
||||
of the <literal>$Id: article.sgml,v 1.139 2002-10-14 23:18:35 jdp Exp $</literal> (or in FreeBSD's case,
|
||||
of the <literal>$Id: article.sgml,v 1.140 2002-10-24 18:54:17 alex Exp $</literal> (or in FreeBSD's case,
|
||||
<literal>$<!-- stop expansion -->FreeBSD<!-- stop expansion -->$</literal>) lines, so you will have to edit
|
||||
the file to resolve the conflict (remove the marker lines and
|
||||
the second <literal>$Id: article.sgml,v 1.139 2002-10-14 23:18:35 jdp Exp $</literal> line, leaving the original
|
||||
<literal>$Id: article.sgml,v 1.139 2002-10-14 23:18:35 jdp Exp $</literal> line intact).</para>
|
||||
the second <literal>$Id: article.sgml,v 1.140 2002-10-24 18:54:17 alex Exp $</literal> line, leaving the original
|
||||
<literal>$Id: article.sgml,v 1.140 2002-10-24 18:54:17 alex Exp $</literal> line intact).</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
|
Loading…
Reference in a new issue