Sean Whitton writes ("Bug#842644: some feedback for dgit-maint-dpm(7)"):
> dgit will create the debian/foo tag, but not two other tags that dpm
> users expect, patched/foo and upstream/foo.
>
> One way to fix this is just to type `git dpm tag` after doing the dgit
> push. But this generates an error that the debian/foo tag differs from
> what dpm expects. It's not that the tag is pointing to the wrong
> commit, but that the text of the tag is not what git-dpm expects it to
> be.
>
> Possibly dgit should not create the debian/foo tag in --dpm mode.
Following discussion with Onovy:
Draft spec.
Desired behaviour for dgit is:
* make all three tags
* the upstream/ and patched/ tags do not need to be signed
* if upstream/ or patched/ (or indeed debian/) tag(s) already
exist, then this is ok if they each refer to the right thing;
if they don't, dgit push should fail
* use the text from git-dpm in the debian/ tag
* sign the debian/ tag from git-dpm
* send only the debian/ and archive/debian/ tags to dgit-repos
This will work if the user has made an upstream tag earlier. It will
also work if the user calls git-dpm tag before dgit push.
Calling git-dpm tag before dgit push should be disrecommended in the
manpage when this is all implemented.
Implementation: call git-dpm tag in the playtree we are using for
split brain mode anyway.
Unresolved issues:
git-dpm does not follow DEP-14 tag mangling - so this will all break
with epochs.
Maybe git-dpm tag depends on some branches existing. They don't exist
in the playtree.
git-dpm tag takes a number of options. There wouldn't be any way to
pass them.
Ian.
--
Ian Jackson <[email protected]> These opinions are my own.
If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.