X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=TODO.BRANCH;h=a8377a823c483bb938fcb398eab8db88503ba6ad;hp=7b9bf313bc25161d9f6174e9035c421216695c57;hb=ff53225eafcc9e53998f9f49085a366f3f98fc9c;hpb=ad6c8798e2ac25be232b0906e3987eb0523fa57a diff --git a/TODO.BRANCH b/TODO.BRANCH index 7b9bf313..a8377a82 100644 --- a/TODO.BRANCH +++ b/TODO.BRANCH @@ -1,13 +1,25 @@ -Tag rename unfinished business -(things resulting from searching for `tag' where searching for - `debiantag' wouldn't find them) - 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 ? + + On push with split brain, do synthetic fast forward if as follows: + - find previous push (archive version, import, whatever + is result of fetch into the dgit remote tracking branch) + - find its version number + - find the tag we fetched during git_fetch_us in lrfetchrefs_f + [*] this may need us to arrange to fetch it + that is, find the DEP-14 tag + - find the corresponding dgit tag + - the dgit tag should be a descendant of the DEP-14 tag + - what we are pushing should be a descendant of the DEP-14 tag + - then we can make it also a descendant of the dgit tag + (make it: in dgit view only, in split brain mode) + + We want a --overwrite=VERSION option which 1. adjusts + the version used above, and 2. does the same thing in any + quilt mode. If no split brain it should make the psuedomerge + on the user's HEAD. Want tests for @@ -32,40 +44,19 @@ Test that, where appropriate, maint view tags are pushed to dgit git repo * Test all three new --quilt=unapplied|gbp|dpm + * Mention in-archive copy fix in debian/changelog - * 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) + * Mention in changelog that: + Remove lrfetchrefs at end of fetch_from_archive, for tidyness - archive dsc must always be regarded - as ff from (or same as) dgit-repos - err depending on version number ? + * Want drs-quilt-gbp test. - 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 + * Mention on changelog or docs that we no longer set a fetch spec for + the dgit remote (which doesn't really work anyway) - xxx actually, no, we need to stop from squashing our - lrref with + updates + * Split quilt-gbp-build-modes into one with sbuild and one without - * Mention in-archive copy fix in debian/changelog + * Add t-tstunt-parsechangelog to various tests - * Add in-archive-move test case +Check BTS