[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Using git-svn and gbp for DPMT - Was: Re: Joining the DPMT and git.debian.org access



On Wed, Jan 22, 2014 at 11:51:33AM +0800, Thomas Goirand wrote:
> On 01/14/2014 10:31 PM, Barry Warsaw wrote:
> > I need to spend more time playing with git-bp, but last time I looked at it
> > (cannot remember which package), I had a lot of trouble unless the package
> > repo was organized Just Right.  One nice thing about svn-bp is that it pretty
> > much just works with a checked out working directory, even when you have local
> > uncommitted changes (--svn-ignore-new).

> Probably you're not used enough with Git, because for what I'm doing,
> "it pretty much just work with a checked out working directory" with Git
> as well.

git-buildpackage has a few misbehaviors by default: the fact that it builds
in place by default instead of exporting to a separate dir is annoying
(--git-export-dir=../build-area/), and that you have to pass it extra
options when you're building from a branch named 'debian'
(--git-debian-branch=branch_name).  IIRC there are subtle differences in
behavior between --svn-ignore-new and --git-ignore-new, but I don't remember
now what they are.

Its pristine-tar handling is pretty solid, though.

> On 01/14/2014 10:31 PM, Barry Warsaw wrote:
> > git-bp OTOH required a specific set of branches inside the repo to
> > stitch everything together and if those were missing, it failed
> > miserably.

> It all depends how you do it. If you base your Git packaging on tags,
> and not using branches, which means having a debian/gbp.conf that
> configures this, then it's really strait forward.

Yes, having to edit debian/gbp.conf on a per-branch basis to even get the
package to build is an annoying misfeature.

> Also, I don't like using "debian" and "master" for branch names. These
> express nothing. It's much better to use "unstable-debian" and
> "upstream-debian" for example.

> As a reference, here's a debian/gbp.conf for tags:
> [DEFAULT]
> debian-branch = debian/unstable
> upstream-tag = %(version)s

> And here's one for pristine-tar:
> [DEFAULT]
> upstream-branch = upstream-unstable
> debian-branch = debian-unstable
> pristine-tar = True

> I also always add in my debian/gbp.conf:
> [git-buildpackage]
> export-dir = ../build-area/

> to make sure no contributors dirties the git with build files (yes, you
> can do that in your ~/.gbp.conf, and the system configuration file in
> /etc, but the point here is to make sure *everyone* uses the build-area).

Right... these are things the end user (or the package maintainer) should
not have to configure :)

But I don't think the DPMT should wait for these buglets to be fixed in
git-buildpackage before switching to git.  (Not that my opinion matters
anyway. :)

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: