Re: [ANNOUNCE] git-deb: a Git importer for Debian packages
Le ven. 25 oct. 2013 21:34:39 CEST, Joey Hess a écrit :
> Gabriel de Perthuis wrote:
>> I only know what dgit does from reading the source code. dgit works
>> server-side and is only available to DDs; as I understand it it creates
>> a new, canonical repo, imports the current version and uses that as a
>> base for new uploads. It's useful as part of a maintainer's workflow.
>> My tool is useful to get a git view of any package, without waiting for
>> anyone to convert their repo.
> Conceptually, they are quite similar. Both are viewing the Debian
> archive as poor man's version control system, and providing a git
> interface to it. dgit doesn't currently concern itself with downloading
> historic versions of the package, so it essentially does a shallow clone
> from the archive, while git-deb does a deep clone.
Okay. They also integrate with git in different ways: dgit calls git
commands here and on alioth, while git-deb is essentially a git plugin.
Aside from the unusual url, it's just another remote in a standard git
> It would be useful if you could arrange for git-deb to produce the
> identical git commit shas for importing a given version of a package as
> does dgit. dgit uses some simple techniques, like using the
> debian/changelog date as the git commit date, to ensure that repeatedly
> importing the same version of a package from the debian archive will
> always yield the same sha.
I've mentioned in this thread that the fast-import stream is stable.
It is derived from changelogs and dsc signatures. That makes the top
hash of an import stable.
Matching dgit repos will have to come through graft points; I'm not
going to shed useful metadata or freeze the stream format. The benefit
would be dubious since a shallow stream would never match anyway.
> Note that you can use dgit clone any package without being a Debian
> developer. You only need an alioth account in order to dgit push.
Here's what it looks like:
Permission denied (publickey).
ssh: failed command: ssh coccia.debian.org 'set -e; cd
/srv/ftp-master.debian.org/ftp/dists; if test -h unstable; then readlink
unstable; exit 0; fi; if test -d unstable; then echo unstable; exit 0;
fi; exit 1'
dgit: subprocess failed with error exit status 255