[Debian-med-packaging] dgit repos history to be rewritten for some packages

Ian Jackson ijackson at chiark.greenend.org.uk
Fri Jan 6 22:44:32 UTC 2017


Hi.  dgit 2.x <= 2.13 had a bug which causes it to generate corrupted
git commits.  These commits are tolerated by Debian's infrastructure
but cause errors from git-fsck and cannot be pushed to some popular
git hosting sites.

You're receivingg this mail because:
 * You receive @packages.debian.org mail for an affected package; or
 * You have used dgit to upload an affected package; or
 * I've been told that you have affected commits in your own tree(s)
I'm BCCing the p.d.o aliases as a courtesy and FYI.  If you do not use
dgit then you can safely ignore this mail.

Those of you who are affected, please read on:

The dgit git server has already been configured to reject any new bad
commits.  You must upgrade to at least dgit 2.14 right away, to avoid
generating more bad commits, which cannot be pushed.


At between 13:00 and 14:00 UTC tomorrow, 7th January, I will rewrite
the histories of all affected repositories on the dgit git server.
(During that time I will disable pushes.)

If you need to push before the transition window, you should NOT yet
rewrite your existing history until then.


Before the transition window, you must upgrade to dgit 2.16.
dgit 2.14 is not sufficient for the affected packages.

During the transition window, you should run
    dgit-badcommit-fixup --real
in all affected trees.  This includes working trees and any bare
repos (eg, any alioth repos).

Do not use dgit (even dgit fetch) on any UNrewritten tree AFTER the
transition window.

Do not use dgit (even dgit fetch) on any REWRITTEN tree BEFORE the
transition window

Doing either of those things is likely to generate spurious merges,
and also require further rewriting of the affected working tree.
(Repeatedly rewriting affected trees would produce a working setup,
containing some foolish but harmless merges.)


The dgit-badcommit-fixup script is in dgit 2.16 (currently in sid) but
does not depend on the rest of the dgit package.  You can copy just
that script to an affected server, and run it there.


My apologies for all this inconvenience.

Ian.

-- 
Ian Jackson <ijackson at chiark.greenend.org.uk>   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.



More information about the Debian-med-packaging mailing list