sourCEntral - mobile manpages

pdf

GIT-BUILDPACKAGE

NAME

git-buildpackage − Build Debian packages from a Git repository

SYNOPSIS

git-buildpackage [ --git-ignore-new ] [ --git-tag ] [ --git-verbose ] [ --git-upstream-branch=treeish ] [ --git-debian-branch=branch_name ] [ --git-builder=BUILD_CMD ] [ --git-cleaner=CLEAN_CMD ] [ --git-sign-tags ] [ --git-keyid=gpg-keyid ] [ --git-posttag=command ] [ --git-debian-tag=tag-format ] [ --git-no-create-orig ] [ --git-tarball-dir=directory ] [ --git-export-dir=directory ] [ --git-export=treeish ] [ --git-pristine-tar ] [ --git-dont-purge ] [ --git-tag-only ]

DESCRIPTION

git-buildpackage is used to build Debian source and .deb packages from a Git repository.

git-buildpackage will, in order:

Verify that it is being executed from the proper location.

Verify that the repository doesn’t contain any uncommitted source changes.

Verify that it is being executed from the correct branch.

(Optionally) export the source tree to a separate build area

Build an orig.tar.gz if it doesn’t exist.

Call debuild(1) (or the application specified via --git-builder) with arguments instructing it to ignore Git meta-data in the diff.gz, passing along all arguments given to git-buildpackage that don’t start with --git-.

(Optionally) tag the tree after a successful build

(Optionally) call a post-tag hook - e.g. to push the results to a remote repository after creating the tag

OPTIONS

--git-ignore-new

Build the .diff.gz and debian package although there are uncommitted changes in the source tree.

--git-tag

Add a git tag after a successfull build.

--git-builder=BUILD_CMD

Use BUILD_CMD instead of debuild -i\.git -I.git

--git-cleaner=CLEAN_CMD

Use CLEAN_CMD instead of debuild clean

--git-verbose

verbose execution

--git-upstream-branch=branch_name

Branch to build the orig.tar.gz from if no tag matching the upstream version is found. Default is upstream. You can give any treeish object here.

--git-debian-branch=branch_name

If you’re not on this branch when invoking git-buildpackage it will fail. Default is master. This is done to make sure you don’t accidentally release from a topic branch. Not being on this branch will be ignored when using --git-ignore-new.

--git-sign-tags

GPG sign all created tags

--git-keyid=gpg-keyid

use this keyid for gpg signing tags

--git-posttag=command

excecute command after tagging a new version

--git-debian-tag=tag-format

use this tag format when tagging Debian versions, default is debian/<version>

--git-no-create-orig

Don’t try to create any orig.tar.gz

--git-export-dir=directory

Export the current branch head (or the treeish object given via --git-export to directory before building.

--git-export=treeish

Instead of exporting the current branch head, export the treeish object treeish. The special name INDEX exports the current index.

--git-tarball-dir=directory

Search for original tarballs in directory instead of generating them

--git-pristine-tar

use pristine-tar to create the orig.tar.gz

--git-dont-purge

retain exported build directory after build

--git-tag-only

don’t build, only tag and run post-tag hooks

CONFIGURATION FILES

Four configuration files are parsed to set defaults for the above commandline arguments:
/etc/git-buildpackage/gbp.conf

system wide configuraton

~/.gbp.conf

per user configuration

.gbp.conf

per branch configuration, can be published with the repository

debian/gbp.conf

per branch configuration, can be published with the repository

.git/gbp.conf

per repository configuration

See /etc/git-buildpackage/gbp.conf for an example.

All options in the config files are specified without the ’git-’ prefix.

SEE ALSO

git-import-dsc(1), git-import-dscs(1), git-import-orig(1), git-dch(1), debuild(1), git(1), git_load_dirs(1), pristine-tar(1), The Git-Buildpackage Manual <URL:file:///usr/share/doc/git-buildpackage/manual-html/index.html>

AUTHOR

Guido Guenther <agx AT sigxcpu DOT org>

pdf