[Openstack-devel] Git as a standard (Was: Moving all git repositories to git.gplhost.com)

Lucas Nussbaum leader at debian.org
Thu Nov 21 13:16:02 UTC 2013


Hi,

(Splitting my answer in two parts)

On 21/11/13 at 10:51 +0800, Thomas Goirand wrote:
> Hi Lucas,
> 
> Thanks for expressing your opinion here.
> 
> On 11/21/2013 05:57 AM, Lucas Nussbaum wrote:
> > As a project, I think that it is important that we maintain packages in
> > a consistant way across the whole distribution.
> 
> I agree with this view, however, this hasn't happen, and it's not taking
> such a direction. There's been many voices in Debian so that we all move
> to Git as a standard. I'm surprised that you write what's above, but at
> the same time, I'm not aware of any of such decision Debian wide, or any
> move on such direction.
> 
> Quite opposed to what you wrote, I've seen a lot of resistance in some
> groups to move from SVN to Git, and we're still stuck with some
> non-standard VCS in many places. Is this something that is being worked
> on? Are you personally involved in such a move?

In Debian, we tend to do such large-scale changes in a progressive way,
providing a smooth transition path over months/years. (I cannot remember
a "flag day" in Debian, but I haven't been involved for that long).  We
don't have many "standard" solutions (even debhelper isn't one), but
mostly "strongly recommended solutions" (debhelper is one). As long as
we clearly advertise which solutions are the recommended ones in our
documentation, I don't think that it's a problem, and it also provides
the feature that it's easy to experiment with alternatives.

Now, Git. "using Git" is not enough as a recommandation, because of the
multitude of workflows that exist around Git. And even if the
recommandation is "Use git-buildpackage" (which is a rather sane
solution), there's still the question of how should patches be managed.
Also, I don't think that we have a very good solution for teams with
many packages (think of the perl team). The one-git-repo-per-package
solution kinda works, but it feels a bit convoluted, and requires
additional tools on top of it (mr + scripts). AFAIK, this is not well
documented. So there's work to do here.

Generally, one thing that worries me in Debian is that packaging teams
tend to design their own workflows, and fail at advertising them to the
rest of the project. It sometimes feel as if Debian split into many
sub-projects with their own workflows. I strongly regret that teams
don't take a more active role at advertising lessons learned, workflows,
and tools to the rest of the project.

> I'd be very happy if in Debian, we adopted the kind of culture there is
> with OpenStack, with gating (eg: unit tests) on each git push. We could
> have piuparts + lintian (and friends) checks preventing pushing bad patches.

I'd be very happy if in Debian, people experimented more with gating,
and provided feedback to the rest of the project. Note that there's also
autopkgtest that could be useful in that context, in order to
standardize on a way to describe tests.

Lucas



More information about the Openstack-devel mailing list