-Provide --gpbpq[=:] options
-Document --quilt=unapplied|gbp|dpm
+
+ - in dopush (?), we need to sort out synthetic fast forard
+ this should not depend entirely on quilt mode
+ but will always be needed if quiltmode_splitbrain
+ * On push, if ff fixup mode enabled, check debian/changelog,
+ and maybe make fake merge, maybe in dgit view, maybe
+ elsewhere ?
+
+
+Want tests for
+
+ - start repo with old tag, push with new tag, run
+ "old" dgit to push again with new tag, push again with
+ old tag
+
+ - rejecting push of same version with one tag when then the other
+
+
+Test that, where appropriate, maint view tags are pushed to dgit git repo
+
+
+ * Provide --gpbpq[=:] options
+
+ * Document --quilt=unapplied|gbp|dpm
+
+ * Mention new tag format in debian/changelog
+
+ * Mention new --quilt=* in debian/changelog
+
+ * Test all three new --quilt=unapplied|gbp|dpm
+
+
+ * IN ARCHIVE COPY Consider and implement fast-forward fixup
+
+ - On fetch, check if specified git hash is ff from
+ existing dgit branch, the same way we do for constructed
+ dscs. The .dsc tells us the git tree but not necessarily
+ the git hash.
+
+ ...ERR MAYBE...
+
+ complicated there are many branches
+ dgit-repos: refs/dgit/suite
+ archive dsc
+ local; remotes/dgit/dgit/suite
+ must be ff
+ may contain dscs
+ local: dgit/suite (not relevant to fetch)
+
+ archive dsc must always be regarded
+ as ff from (or same as) dgit-repos
+ err depending on version number ?
+
+ this code is what needs changing
+ } else {
+ fail "git head (".lrref()."=$lastpush_hash) is not a ".
+ "descendant of archive's .dsc hash ($dsc_hash)";
+ }
+ it just needs to generate the fake merge and set $hash
+ the archive skew stuff is all fine with this
+
+ xxx actually, no, we need to stop from squashing our
+ lrref with + updates
+
+ * Mention in-archive copy fix in debian/changelog
+
+ * Add in-archive-move test case
+