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:[email protected]">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://[email protected]/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">
_______________________________________________
debian-med-commit mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-commit