gbp.conf

&dhconfsection;

&gbp.conf;

Gbp configuration file

/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 man.gbp.buildpackage 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 man.gbp.import.orig 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, man.gbp.import.orig 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

man.gbp.create.remote.repo 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

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

`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

man.gbp.config, man.gbp.clone, man.gbp.create.remote.repo, man.gbp.pq, man.gbp.pull, man.gbp.dch, man.gbp.import.dsc, man.gbp.import.orig, man.gbp.buildpackage, The Git-Buildpackage Manual

## AUTHORS

&dhusername; &dhemail;

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.