[med-svn] r24073 - trunk/community/website/docs
Andreas Tille
tille at moszumanska.debian.org
Fri Sep 22 08:45:36 UTC 2017
Author: tille
Date: 2017-09-22 08:45:36 +0000 (Fri, 22 Sep 2017)
New Revision: 24073
Modified:
trunk/community/website/docs/policy.xml
Log:
Explain how to document the move to Git
Modified: trunk/community/website/docs/policy.xml
===================================================================
--- trunk/community/website/docs/policy.xml 2017-09-22 08:39:23 UTC (rev 24072)
+++ trunk/community/website/docs/policy.xml 2017-09-22 08:45:36 UTC (rev 24073)
@@ -234,92 +234,34 @@
</para>
</sect2>
<sect2 id="subversion-tips">
- <title>Subversion tips</title>
- <para id="svn-buildpackage-aliases">
- For Debian Med packages maintained with Subversion, many of us use
- <command>svn-buildpackage</command> and we recommend it to beginners.
- The following aliases may be useful:<programlisting>
-alias <command>svn-b</command>='svn-buildpackage -us -uc --svn-ignore'
-alias <command>svn-br</command>='svn-b --svn-dont-purge --svn-reuse'
-alias <command>svn-bt</command>='svn-buildpackage --svn-tag'</programlisting>
+ <title>Once you moved the package to Git drop a note in Subversion </title>
+ <para>The conversion process from SVN to Git does not conserve tags.
+ This is no real issue since a tag is actually what we upload and
+ the uploaded code is available at snapshot.debian.org. So all
+ <filename>tags</filename> will be deleted from SVN and
+ <filename>trunk</filename> is cleaned up. In the end we drop a
+ note about the removal:
+ <programlisting>
+svn checkout svn+ssh://svn.debian.org/svn/debian-med/trunk/packages/<package>
+cd <package>
+svn rm tags
+svn rm trunk/debian
+svn commit -m "Moved packaging to Git"
+svn up # THIS IS IMPORTANT! Blame SVN for this!
+# Leave a yaml file to document the move to Git
+cat <trunk/README.status >>EOT
+---
+Format: 1
+Status: git
+SVNDeleteRevision: <SVNcommitID>
+URL: https://git.debian.org/git/debian-med/<package>.git
+Comment: <
+ This package is now managed in a Git repository.
+EOT
+svn add trunk/README.status
+svn commit -m "Document packaging to Git"
+ </programlisting>
</para>
- <para id="svn-mergewithupstream">
- <command>svn-inject <replaceable>-o</replaceable></command> sets up the
- <literal>mergeWithUpstream</literal> property for the SVN directories
- where packages are stored. In case <command>svn-inject</command> was
- not used, you can do it by hand with the command
- <code><command>svn propset</command>
- <replaceable>mergeWithUpstream</replaceable>
- <replaceable>1</replaceable> <replaceable>debian</replaceable></code>.
- </para>
- <para id="download-upstream-source">
- To download the upstream sources (if there is a
- <filename>debian/watch</filename> file): <code><command>echo
- "origDir=.." >> .svn/deb-layout && uscan
- --force-download</command></code>. Alternatively, you can try
- <code><command>debian/rules get-orig-source</command></code>.
- </para>
- <para id="svn-write-access">
- If you're a Debian developer or a member of the Debian Med group on
- Alioth, you can commit your changes: <command>svn commit</command> (also
- <command>svn ci</command>). Otherwise, you can ask to be added to the
- group (see the <link linkend="membership">Membership</link> section), or
- send the result of <command>svn diff</command> to the <ulink
- url="mailto:debian-med at lists.debian.org">mailing list</ulink>
- (<command>gzip -9</command> it, if it's too large).
- </para>
- <para id="svn-tag-release">
- It may happen that a package version has been uploaded to Debian
- repositories, and you forgot to tag the last build with
- <command>svn-buildpackage --svn-tag</command>. You can tag this package
- also retroactively. A first step, creating
- the tags directory, can be achieved in two ways: either create it
- locally as sibling of <filename class="directory">trunk/</filename> with
- <code><command>svn mkdir</command> <filename class="directory">tags</filename></code>, and commit with
- <code><command>svn commit</command></code>, or create it remotely with
- <code><command>svn mkdir</command> <filename class="directory">svn+ssh://user@svn.debian.org/svn/debian-med/trunk/packages/<package>/tags</filename></code>.
- After the tags directory has been created, you're ready to tag the
- package: <code><command>svn-buildpackage</command> <option>--svn-tag-only</option> <option>--svn-noautodch</option></code>.
- The <option>--svn-noautodch</option> avoids
- <filename>debian/changelog</filename> to be marked as <literal>UNRELEASED</literal>.
- </para>
- <para id="example-svn-session">
- Here is an example session where a package is prepared manually:<programlisting>
-# Check out debian-med/trunk, cd to debian-med/trunk/packages
-# Create new project folder with
-svn mkdir projectname
-svn mkdir projectname/trunk
-
-# Put orig.tar.gz in place
-mv some_version.orig.tar.gz projectname
-
-# Inform svn-buildpackage about the location of the orig.tar.gz
-echo "origDir=.." > projectname/trunk/.svn/deb-layout
-
-# Untar source tree for development
-cd projectname
-tar xzvf some_version.orig.tar.gz
-cd some-version # entering the unpackaged source tree
-if [ ! -d debian ]; then svn export svn://anonscm.debian.org/svn/debian-med/trunk/package_template debian ; fi
-mv debian ../trunk
-ln -s ../trunk/debian .
-
-# continue development
-fakeroot ./debian/rules binary
-
-# until it works, finally
-cd ..
-
-# debian directory is the only thing that is stored in svn, to be merged with upstream
-svn propset mergeWithUpstream 1 trunk/debian
-
-# See if things can be compiled via svn-buildpackage
-cd trunk
-svn-buildpackage -uc -us
-
-# check build
-lintian ../build-area/*changes</programlisting>
- </para>
</sect2>
<sect2 id="git-repository-structures">
<title>Common Git repository structures</title>
@@ -985,7 +927,7 @@
<para>
We prefer that uploaded packages are built in a chroot, to provide
similar build environment to the whole team. After upload, please <link linkend="vcs-tags">tag</link>
- the <link linkend="svn-tag-release">Suvbersion</link> or <link linkend="git-tag-release">Git</link> repository.
+ the <link linkend="git-tag-release">Git</link> repository.
</para>
</sect2>
<sect2 id="patches">
More information about the debian-med-commit
mailing list