summaryrefslogtreecommitdiff
path: root/projects/git-buildpackage.mdwn
blob: d8396a601105e5631523d391f0ca4ec004c99890 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Suite to help with maintaining [Debian](http://www.debian.org) packages in [Git](http://git-scm.com) repositories.

[[!toc]]

[[!template id=project_logo img="gbp.png"]]

## 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](https://gbp.sigxcpu.org/manual).
* A possible workflow for maintaining [[development/debian packages in git]].
* The current [api documentation](https://gbp.sigxcpu.org/apidocs) in case you want to extend git-buildpackage.
The usage of the *GitRepository* class is shown (and tested) in
[test_GitRepository](https://honk.sigxcpu.org/projects/git-buildpackage/apidocs/doctests.test_GitRepository.html).

## Download

[[!template  id=honk_git repo="git-buildpackage"]]

There's also a clone on [github](https://github.com/agx/git-buildpackage).

### Debian packages
Debian packages of git-buildpackage can be downloaded from the [[!debpkg git-buildpackage desc="Debian Archive"]].

### Pypi
If not on a Debian system you can fetch the package from [pypi](https://pypi.python.org/pypi/gbp):

    pip install gbp

## Bugreports
For enhancements and feature requests you can either use the [Debian bugtracking system](https://bugs.debian.org/git-buildpackage) or email [me](mailto:agx@sigxcpu.org) directly.

[[!template  id=honk_ml project="git-buildpackage"]]

## gbp.conf
Here's my current [[gbp.conf]].

## Related Tools
* [Git-pbuilder][0] by Russ Allbery is included in gbp but a newer version might be available.
* [Chef Cookbook for gbp][1]
* [git-buildpackage-rpm][2] by Markus Lehtonen. A fork of gbp adding RPM support. Large parts have been merged into *gbp*.

## Todo
* templating for gbp dch ([[!debbug 536719]]. [[!debbug 529332]])
* translate the manual
* [[!debbug git-buildpackage desc="bugs"]] filed in the Debian bugtracking system

## Author
:git-buildpackage was written by [[Guido G√ľnther|/agx]] with contributions from many individuals. See the [changelog](https://git.sigxcpu.org/cgit/git-buildpackage/tree/debian/changelog) for attributions.

## License
git-buildpackage is free software and licensed under the GPL Version 2.

[0]: http://www.eyrie.org/~eagle/software/scripts/git-pbuilder.html
[1]: https://github.com/mlafeldt/gbp-cookbook
[2]: https://github.com/marquiz/git-buildpackage-rpm