Suite to help with maintaining Debian packages in Git repositories.
Tools
GBP ships the following tools:
- gbp buildpackage: build a package out of a git repository, check for local modifications and tag appropriately
- gbp import-{dsc,dscs}: import existing Debian source packages into a git repository
- gbp import-orig: import a new upstream version into the git repository
- gbp export-orig: export an upstream tarball from the git repository
- gbp dch: generate Debian changelog entries from Git commit messages
- gbp pq: maintain debian/patches on a patch queue branch
- gbp clone: clone a remote repository and make it ready for gbp buildpackage
- gbp pull: pull from a remote repository and update the necessary branches
- gbp create-remote-repo: mirror your git repository to a remote side
- gbp config: print configuration values
- gbp push: push content to remote repositories
- gbp tag: tag a Debian package in git
- gbp pristine-tar: create pristine-tar commits
There's also some support for maintaining RPMs in (gbp buildpackage-rpm, gbp import-srpm, gbp pq-rpm, gbp rpm-ch). and helpers in /usr/share/doc/git-buildpackage/examples/:
- gbp-add-patch: Commits a patch to the current branch and uses the patch header for the commit message, useful after gbp pq export.
Documentation
- git-buildpackage's official manual.
- A possible workflow for maintaining debian packages in git.
- The current api documentation in case you want to extend git-buildpackage. The usage of the GitRepository class is shown (and tested) in test_GitRepository.
Download
Source Code
The source code is available via:
git clone https://git.sigxcpu.org/cgit/git-buildpackage
and can be browsed here.
There's a mirror on salsa.debian.org and github.
Debian packages
Debian packages of git-buildpackage can be downloaded from the Debian Archive.
RPM based distributions
If you're on a rpm based distribution that doesn't ship gbp you can use the spec file in the packaging folder as a template to build an gbp as rpm.
Pypi
If all else fails you can fetch the package from pypi:
pip install gbp
but be prepared to tweak some options since the this is mostly meant to make using gbp's python classes in other projects. However patches to improve this are welcome.
Bugreports
For enhancements and feature requests you can either use the Debian bugtracking system or email me directly.
Mailing List
git-buildpackage has it's own mailing list for general discussion and patches.
If you encounter a security issue please report it via the above channels.
gbp.conf
Here's my current gbp.conf.
Related Tools
- Git-pbuilder by Russ Allbery is included in gbp but a newer version might be available.
- Chef Cookbook for gbp
- git-buildpackage-rpm by Markus Lehtonen. A fork of gbp adding RPM support. Large parts have been merged into gbp.
- ansible-role-gbp - an ansible role to configure git-buildpackge and pbuilder/cowbuilder.
Todo
- templating for gbp dch (Debian bug #536719. Debian bug #529332)
- translate the manual
- bugs filed in the Debian bugtracking system
Author
git-buildpackage was written by Guido Günther with contributions from many individuals. See the changelog for attributions.
License
git-buildpackage is free software and licensed under the GPL Version 2.