Introduction to Ubuntu Distributed Development
Dmitrijs Ledkovs
dmitrij.ledkov at gmail.com
Sun Dec 20 22:51:12 GMT 2009
2009/12/20 Chow Loong Jin <hyperair at ubuntu.com>:
> On Sunday 20,December,2009 02:58 AM, Dmitrijs Ledkovs wrote:
>> Wehn we are discussing $VCS to manage packages it is really about the
>> tools associated with them.
>>
>> In git that's topgit + git-buildpackage. In hg that MQ + recently
>> restarted hg+buildpackage. And the famous pristine-tar.
>>
>> It is important (for me at least) to still be able to generate debdiff
>> and be able to reproduce each version.
>>
>> In addition you have to consider DebSrc 3.0 (quilt) (approved for
>> Debian, in final stages for Ubuntu) and DebSrc 3.0 (git/bzr).
>>
>> hg/MQ is probably the closest to DebSrc 3.0 (quilt) - MQ is like
>> loom/threads which when applied are stored as series of quilt patches.
>>
>> Topgit is a full DAG which is quite confusing (for me personally) and
>> the generated final package is not stored. (You keep branches unmerged
>> and export patches). IMHO this is bad cause I still want to $vsc
>> $build $tag.
> I have not actually used topgit, nor have I really seen the need to since quilt
> alone does a spectacular job for patch management.
Topgit allows you to have branch-per-patch and at buildtime you can
request to export those branches (their heads) as quilt patch series
into debian/patches/
>>
>> Bzr is ok for building packages and keeping the history right.
>>
>> What makes Ubuntu different from typical package maintanance is that
>> we are based on Debian. And we usually have upstream -> debian patches
>> -> debian-packaging -> ubuntu patches -> ubuntu packaging. WIth small
>> amount of packages being just upstream -> ubuntu patches -> ubuntu
>> packaging when we take a different policy direction from debian.
>>
>> Git/Hg do not support that directly without cheating. Bzr and
>> associate tools are the only once so far which try to support this
>> workflow.
> I'm actually quite curious to know what you mean by this, since I haven't
> actually done anything that feels like "cheating" with git and git-buildpackage,
> especially when I have to merge with branches several layers down to handle PPAs
> (karmic, jaunty, intrepid, hardy, etc). Could you clarify this?
I'm referring to working on upstream trunk and trying to package it
for daily builds off the trunk. While still using the same repo for
development. Basacly I couldn't make hg nor git to behave (take all
changes of the tree but use by debian/ folder and no I don't care if
there is conflicts outside debian/ just pick master). I had to jump
through loops......
>> [...]
>
> --
> Kind regards,
> Chow Loong Jin (GPG: 0x8F02A411)
> Ubuntu Contributing Developer
^^^^^^^^^^^^^^^^^^^^I'm jealous ;-)
--
With best regards
Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - against proprietary attachments
More information about the ubuntu-devel
mailing list