The "svn switch" tip isn't needed anymore, but the ControlMaster
tip can help with TCP latency. While here: modernize the makefile options and clarify the text Approved by: bcr (mentor)
This commit is contained in:
parent
b5d2b293a7
commit
317efb77f2
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=40292
1 changed files with 10 additions and 28 deletions
|
@ -1883,37 +1883,20 @@ U stable/9/share/man/man4/netmap.4
|
||||||
<para>Don't remove and re-add the same file in a single commit
|
<para>Don't remove and re-add the same file in a single commit
|
||||||
as this will break the CVS exporter.</para>
|
as this will break the CVS exporter.</para>
|
||||||
|
|
||||||
<para>Speeding up checkouts and minimising network traffic is
|
<para>Speeding up svn is
|
||||||
possible with the following recipe:</para>
|
possible by adding the following to <filename>~/.ssh/config</filename>:</para>
|
||||||
|
|
||||||
<screen>&prompt.user; <userinput>svn co --depth=empty svn+ssh://svn.freebsd.org/base fbsvn</userinput>
|
<screen>Host *
|
||||||
&prompt.user; <userinput>cd fbsvn</userinput>
|
ControlPath ~/.ssh/sockets/master-%l-%r@%h:%p
|
||||||
&prompt.user; <userinput>svn up --depth=empty stable</userinput>
|
ControlMaster auto
|
||||||
&prompt.user; <userinput>svn up head</userinput>
|
ControlPersist yes</screen>
|
||||||
&prompt.user; <userinput>cd stable</userinput>
|
|
||||||
&prompt.user; <userinput>cp -r ../head/ 7</userinput>
|
|
||||||
&prompt.user; <userinput>cd 7</userinput>
|
|
||||||
&prompt.user; <userinput>svn switch svn+ssh://svn.freebsd.org/base/stable/7</userinput>
|
|
||||||
&prompt.user; <userinput>cd ..</userinput>
|
|
||||||
&prompt.user; <userinput>cp -r 7/ 6</userinput>
|
|
||||||
&prompt.user; <userinput>cd 6</userinput>
|
|
||||||
&prompt.user; <userinput>svn switch svn+ssh://svn.freebsd.org/base/stable/6</userinput></screen>
|
|
||||||
|
|
||||||
<para>What this bit of evil does is check out head, stable/7 and
|
<para>and then typing</para>
|
||||||
stable/6. We create the empty checkout directories under
|
<screen><userinput>mkdir ~/.ssh/sockets</userinput></screen>
|
||||||
<acronym>SVN</acronym>'s control. In <acronym>SVN</acronym>,
|
|
||||||
subtrees are self identifying, like in <acronym>CVS</acronym>.
|
|
||||||
We check out head and clone it as stable/7. Except we don't
|
|
||||||
want the head version so we <quote>switch</quote> it to the
|
|
||||||
7.x tree location. <acronym>SVN</acronym> downloads diffs to
|
|
||||||
convert the <quote>head</quote> files to
|
|
||||||
<quote>stable/7</quote> instead of doing a fresh checkout.
|
|
||||||
The same goes for stable/6. This does, however, definitely
|
|
||||||
count as abuse of the working copy client code!</para>
|
|
||||||
|
|
||||||
<para>Checking out a working copy with a stock Subversion client
|
<para>Checking out a working copy with a stock Subversion client
|
||||||
without &os;-specific patches
|
without &os;-specific patches
|
||||||
(<makevar>WITH_FREEBSD_TEMPLATE</makevar>) will mean that
|
(<makevar>OPTIONS_SET=FREEBSD_TEMPLATE</makevar>) will mean that
|
||||||
<literal>$FreeBSD$</literal> tags will not be
|
<literal>$FreeBSD$</literal> tags will not be
|
||||||
expanded. Once the correct version has been installed, trick
|
expanded. Once the correct version has been installed, trick
|
||||||
Subversion into expanding them like so:</para>
|
Subversion into expanding them like so:</para>
|
||||||
|
@ -1921,8 +1904,7 @@ U stable/9/share/man/man4/netmap.4
|
||||||
<screen>&prompt.user; <userinput>svn propdel -R svn:keywords .</userinput>
|
<screen>&prompt.user; <userinput>svn propdel -R svn:keywords .</userinput>
|
||||||
&prompt.user; <userinput>svn revert -R .</userinput></screen>
|
&prompt.user; <userinput>svn revert -R .</userinput></screen>
|
||||||
|
|
||||||
<para>This is not a good idea if uncommitted patches exist,
|
<para>This will wipe out uncommitted patches.</para>
|
||||||
however.</para>
|
|
||||||
</sect2>
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue