chiark / gitweb /
By default, generate a DEP-14 tag as well as a dgit archive/* tag
[dgit.git] / dgit-maint-merge.7.pod
index 8794d1d0539287fcb527ea4599ccfb622d9deabc..dc5bfa34043dd1dac121f416b3d2bc3ce444c0ad 100644 (file)
@@ -50,6 +50,10 @@ compress orig tarballs:
 
 =head1 INITIAL DEBIANISATION
 
+This section explains how to start using this workflow with a new
+package.  It should be skipped when converting an existing package to
+this workflow.
+
 =head2 When upstream tags releases in git
 
 Suppose that the latest stable upstream release is 1.2.2, and this has
@@ -172,6 +176,50 @@ branches:
 
 =back
 
+=head1 CONVERTING AN EXISTING PACKAGE
+
+This section explains how to convert an existing Debian package to
+this workflow.  It should be skipped when debianising a new package.
+
+=head2 No existing git history
+
+=over 4
+
+    % dgit clone foo
+    % cd foo
+    % git remote add -f upstream https://some.upstream/foo.git
+
+=back
+
+=head2 Existing git history using another workflow
+
+First, dump any existing patch queue:
+
+=over 4
+
+    % git rm -rf debian/patches
+    % git commit -m "drop existing quilt patch queue"
+
+=back
+
+Then make new upstream tags available:
+
+=over 4
+
+    % git remote add -f upstream https://some.upstream/foo.git
+
+=back
+
+Now you simply need to ensure that your git HEAD is dgit-compatible,
+i.e., it is exactly what you would get if you ran B<dpkg-buildpackage
+-i\.git/ -I.git -S> and then unpacked the resultant source package.
+
+To achieve this, you might need to delete
+I<debian/source/local-options>.  One way to have dgit check your
+progress is to run B<dgit build-source>.
+
+The first dgit push will require I<--overwrite>.
+
 =head1 SOURCE PACKAGE CONFIGURATION
 
 =head2 debian/source/options
@@ -261,7 +309,7 @@ Once you're satisfied with what will be merged, update your package:
 
 =over 4
 
-    % git archive ../foo_1.2.3.orig.tar.xz 1.2.3
+    % git archive -o ../foo_1.2.3.orig.tar.xz 1.2.3
     % git merge 1.2.3
     % dch -v1.2.3-1 New upstream release.
     % git add debian/changelog && git commit -m changelog
@@ -275,7 +323,10 @@ Again, if you are using the version 1.0 source package format, replace
 
 =head2 When upstream releases only tarballs
 
-Either
+You will need the I<debian/gbp.conf> from "When upstream releases only
+tarballs", above.
+
+Then, either
 
 =over 4