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

Re: Bug#443392: ITP: gitpkg -- helper scripts for maintaining packages with git



Hi Ron,
On Thu, Oct 04, 2007 at 05:40:04PM +0930, Ron wrote:
[..snip..]
> gitpkg has a much more narrow focus and concerns itself solely with the
> task of generating a valid Debian source package from a(ny) git repo.
> It takes just a tag (of any tree-ish form) indicating the version to
> release (or two tags if you have separate debian and upstream branches)
> and builds a source package of the correct form based on the content
> retrieved.
That's fine if you're a working on all of your packages alone, things
get more interesting in case of co-maintenance. Where I use
git-buildpackage a lot, several people are co-maintaining about 100
packages (and more and more packages keep moving from svn to git). In
this case you want consistent tag and branch naming, make sure tags are
named and signed correctly, etc. The many degrees of freedom of git make
it a great tool but you have to add some naming policy on top of that in
order to work together efficently - that's what git-buildpackage tries
to do - without getting into the way of the user too much.

> How you arrange the repo, how you label your tags, when you apply them,
> and how you build your packages after that are entirely independent.
Well, I think they aren't if you intend to work with others.

> So if you happen to have many different git repos, all using different
> conventions for these things, you can still use the same tool, without
> needing to modify its config, to extract source packages from all of them.
I don't see why this can't be done with git-buildpackage too. While you
do:

gitpkg branch1 branch2

git-buildpackage does:

git-buildpackage --git-debian-branch=branch1 --git-upstream-branch=branch2

or only:

git-buildpackage

if you just set up .git/gbp.conf correcty (once) - you can certainly
oveerride gbp.conf on the commandline at any time.

> Likewise if you have a repo with many 'upstream' branches, or even many
> Debian branches.  gitpkg doesn't care, it just needs you to tell it on
> the fly which one(s) you want to release from this time.
See above.

> Anyhow, that's why I saw this as a separate experiment to make rather
> than an 'improvement' that could be easily made to git-buildpackage.
> We are aiming at much the same result though, so I'd be more than
> happy to see ideas shared between the different schools of thought
> on how to best manage packages with git.
Same here. Thanks for the explanation.

[..snip..] 
> It still seems a bit suboptimal to me though, since git-archive can
> pull source from any tree-ish, not just a branch head.  How much that
> affects individuals will vary from user to user though.  In my case
> the release I want to make can be fairly commonly no longer the head
> though, so this being trivial (and not adding extra overhead to the
> repo) is important to me.
I was thinking about making the --upstream-branch and --debian-branch
options accept anything treeish for some time now. This way you could
simply pass tag names, etc.
Cheers,
 -- Guido

Attachment: signature.asc
Description: Digital signature


Reply to: