Scroll to navigation

gbp.conf(5) git-buildpackage Manual gbp.conf(5)

NAME

gbp.conf - Gbp configuration file

SYNOPSIS

/etc/git-buildpackage/gbp.conf
system wide
~/.gbp.conf
per user
.gbp.conf
per branch, can be published with the repository (deprecated)
debian/gbp.conf
per branch, can be published with the repository
.git/gbp.conf
per repository

DESCRIPTION

The gbp.conf configuration files provide default global options and specific options for individual gbp commands. All files have the same format as described below and are parsed in the above order from top to bottom with increasing precedence. Non existing files will be skipped.

Each file consists of either zero or one default section, and zero or one sections for each gbp command. Additionally, there can be an arbitrary number of remote-config sections. Comments start with a hash sign (#). The overall layout is:


      [DEFAULT]
      # This section is for global settings. Affects all commands.
      # Options set here have the lowest priority.
      key = value
      [<command>]
      # Specific sections for each command, like buildpackage
      # Options set here have lower priority than command line options
      key = value
      [remote-config <name>]
      # Specific sections for a remote configuration. This can be used several
      # times to set up remote configuration for gbp create-remote-repo
      key = value
    

The sections for each command are named like the command (without gbp) surrounded by square brackets (e.g. [buildpackage]). For backwards compatibility, command sections starting with git- or gbp- are also supported but will provoke a warning when parsed by gbp.

The keys in the key=value pairs are named like the command-line options of the corresponding command (with the '--' stripped off) and can hold the same values, but see below for details. In case of gbp buildpackage and gbp buildpackage-rpm the key needs '--git-' instead of '--' stripped off.

For example, the gbp-buildpackage(1) manual page documents the --git-export-dir=directory option which can be turned into configuration file setting by dropping the --git- prefix:


      [buildpackage]
      export-dir = directory
    

Options that can be repeated on the command line take Python-like lists in the config file. For example, the gbp-import-orig(1) command has the --filter=pattern option which can be turned into a configuration file option like this:


      [import-orig]
      filter = [ '.svn', '.hg' ]
    

Boolean options can be either True or False. For example, gbp-import-orig(1) has the --pristine-tar and --no-pristine-tar options which translate to:


      [import-orig]
      pristine-tar = True
    

and


      [import-orig]
      pristine-tar = False
    

respectively.

REMOTE SITE CONFIGURATION

gbp-create-remote-repo(1) can additionally parse remote site configurations from gbp.conf. For example, a configuration like:


      [remote-config pkg-libvirt]
      # Location of the repository
      remote-url-pattern = ssh://git.debian.org/git/pkg-libvirt/%(pkg)s
      # Template dir to passed to git-init
      template-dir = /srv/alioth.debian.org/chroot/home/groups/pkg-libvirt/git-template
    

can be used to create remote repositories for the pkg-libvirt project using:


      gbp-create-remote-repo --remote-config=pkg-libvirt
    

This can be useful if you're often creating new remote repositories for different projects.

NOTES

Note

To see the current set of values that would be applied after parsing the configuration files, use gbp-config(1).

Note

gbp import-dscs and git-pbuilder can't be configured via gbp.conf.

EXAMPLES

An example set up for packaging work:


      # $HOME/.gbp.conf
      [DEFAULT]
      pristine-tar = True
      cleaner = fakeroot debian/rules clean
      [buildpackage]
      export-dir  = ../build-area/
      [import-orig]
      dch = False
        filter = [
        '.svn',
        '.hg',
        '.bzr',
        'CVS',
        'debian/*',
        '*/debian/*'
      ]
      filter-pristine-tar = True
      [import-dsc]
      filter = [
        'CVS',
        '.cvsignore',
        '.hg',
        '.hgignore'
        '.bzr',
        '.bzrignore',
        '.gitignore'
      ]
      # End of file
    

ENVIRONMENT

The following environment variables can be used to modify gbp's configuration file handling:
GBP_CONF_FILES
A colon separated list of configuration files to parse. If unset or empty the default list of files is parsed (see above).
GBP_DISABLE_SECTION_DEPRECATION
When set to a non-empty value don't print a deprecation warning in case gbp encounters a section starting with git- or gbp-.
GBP_DISABLE_GBP_CONF_DEPRECATION
When set to a non-empty value don't print a deprecation warning in case gbp encounters a configuration file in a deprecated location.

FILES

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

SEE ALSO

gbp-config(1), gbp-clone(1), gbp-create-remote-repo(1), gbp-pq(1), gbp-pull(1), gbp-dch(1), gbp-import-dsc(1), gbp-import-orig(1), gbp-buildpackage(1), The Git-Buildpackage Manual ⟨file:///usr/share/doc/git-buildpackage/manual-html/index.html⟩

AUTHORS

Guido Günther <agx@sigxcpu.org>

This manual page is based on a POD version by Jari Aalto <jari.aalto@cante.net>. Released under license GNU GPL version 2 or (at your option) any later. version.

21 March 2019