svn commit: r51854 - head/en_US.ISO8859-1/articles/committers-guide

Eitan Adler eadler at FreeBSD.org
Sun Jun 17 03:20:42 UTC 2018


Author: eadler
Date: Sun Jun 17 03:20:41 2018
New Revision: 51854
URL: https://svnweb.freebsd.org/changeset/doc/51854

Log:
  Committer guide: restore some information about svnsync
  
  Even though we don't have currently have active seeds some people still
  use the old ones. In addition we may restore creating new ones.
  
  Update the text a bit to reflect that you can use the mirror. Move the
  text together into one section, and keep the note about alternatives.
  
  Requested by:	kib

Modified:
  head/en_US.ISO8859-1/articles/committers-guide/article.xml

Modified: head/en_US.ISO8859-1/articles/committers-guide/article.xml
==============================================================================
--- head/en_US.ISO8859-1/articles/committers-guide/article.xml	Sun Jun 17 03:01:55 2018	(r51853)
+++ head/en_US.ISO8859-1/articles/committers-guide/article.xml	Sun Jun 17 03:20:41 2018	(r51854)
@@ -580,35 +580,6 @@ You need a Passphrase to protect your secret key.</scr
 	</note>
       </sect3>
 
-      <sect3 xml:id="svn-getting-started-checkout-from-a-mirror">
-	<title>Checkout from a Mirror</title>
-
-	<para>Check out a working copy from a mirror by
-	  substituting the mirror's <acronym>URL</acronym> for
-	  <literal>svn+ssh://repo.freebsd.org/base</literal>.  This
-	  can be an official mirror or a mirror maintained by using
-	  <command>svnsync</command>.</para>
-
-	<para>There is a serious disadvantage to this method: every
-	  time something is to be committed, a
-	  <command>svn relocate</command> to the master repository has
-	  to be done, remembering to <command>svn relocate</command>
-	  back to the mirror after the commit.  Also, since
-	  <command>svn relocate</command> only works between
-	  repositories that have the same UUID, some hacking of the
-	  local repository's UUID has to occur before it is possible
-	  to start using it.</para>
-
-	<para>The hassle of a local <command>svnsync</command> mirror
-	  probably is not worth it unless the network connectivity
-	  situation or other factors demand it.  Starting
-	  a fresh mirror from empty takes a long time.
-	  Expect a minimum of 10 hours with high speed connectivity.
-	  If international links are involved, expect this to take
-	  four to ten times longer.  Another option is to use the
-	  git mirror.</para>
-      </sect3>
-
       <sect3 xml:id="svn-getting-started-base-layout">
 	<title><literal>RELENG_*</literal> Branches and General
 	  Layout</title>
@@ -1861,6 +1832,69 @@ U    stable/9/share/man/man4/netmap.4
 	  correct location.  Instead of a couple of lines of text, the
 	  repository journal grows an entire new copy of the file.
 	  This is a waste.</para>
+      </sect3>
+
+      <sect3 xml:id="svn-getting-started-checkout-from-a-mirror">
+	<title>Using a Subversion mirror</title>
+
+	<para>There is a serious disadvantage to this method: every
+	  time something is to be committed, a
+	  <command>svn relocate</command> to the master repository has
+	  to be done, remembering to <command>svn relocate</command>
+	  back to the mirror after the commit.  Also, since
+	  <command>svn relocate</command> only works between
+	  repositories that have the same UUID, some hacking of the
+	  local repository's UUID has to occur before it is possible
+	  to start using it.</para>
+
+	<sect4 xml:id="svn-advanced-checkout-from-mirror">
+	  <title>Checkout From a Mirror</title>
+
+	  <para>Check out a working copy from a mirror by
+	    substituting the mirror's <acronym>URL</acronym> for
+	    <literal>svn+ssh://repo.freebsd.org/base</literal>.  This
+	    can be an official mirror or a mirror maintained by using
+	    <command>svnsync</command>.</para>
+	</sect4>
+
+	<sect4 xml:id="svn-advanced-use-setting-up-svnsync">
+	  <title>Setting up a <application>svnsync</application>
+	    Mirror</title>
+
+	  <para>Avoid setting up a <application>svnsync</application>
+	    mirror unless there is a very good reason for it.  Most
+	    of the time a <command>git</command> mirror is a better
+	    alternative.  Starting a fresh mirror from scratch takes
+	    a long time.
+	    Expect a minimum of 10 hours for high speed connectivity.
+	    If international links are involved, expect this to take
+	    four to ten times longer.</para>
+
+	  <para>One way to limit the time required is to grab a <link
+	      xlink:href="https://download.freebsd.org/ftp/development/subversion/">seed file</link>.
+	    It is large
+	    (~1GB) but will consume less network traffic and take less
+	    time to fetch than svnsync will.</para>
+
+	  <para>Extract the file and update it:</para>
+
+	  <screen>&prompt.user; <userinput>tar xf svnmirror-base-r261170.tar.xz</userinput>
+&prompt.user; <userinput>svnsync sync file:///home/svnmirror/base</userinput></screen>
+
+	  <para>Now, set that up to run from &man.cron.8;, do
+	    checkouts locally, set up a svnserve server for local
+	    machines to talk to, etc.</para>
+
+	  <para>The seed mirror is set to fetch from
+	    <literal>svn://svn.freebsd.org/base</literal>.  The
+	    configuration for the mirror is stored in
+	    <literal>revprop 0</literal> on the local mirror.  To see
+	    the configuration, try:</para>
+
+	  <screen>&prompt.user; <userinput>svn proplist -v --revprop -r 0 file:///home/svnmirror/base</userinput></screen>
+
+	  <para>Use <literal>svn propset</literal> to change things.</para>
+	</sect4>
       </sect3>
 
       <sect3 xml:id="svn-advanced-use-committing-high-ascii-data">


More information about the svn-doc-all mailing list