git-dch

Name

git-dch -- Generate the Debian changelog from git commit messages

Synopsis

git-dch [--verbose] [--debian-branch=branch_name] [--debian-tag=tag-format] [--since=commitish] [--snapshot] [--release] [--auto] [--snapshot-number=expression] [--git-log=git-log-options] [path1 path2]

DESCRIPTION

git-dch reads git commit messages and generates the debian changelog from it. If no arguments are given git-dch starts from the last tagged debian package version up to the current tip of the current branch. If the distribution of the topmost section in debian/changelog is UNRELEASED the changelog entries will be inserted into this section. Otherwise a new section will be created.

If --auto is given git-dch tries to guess the last Git commit documented in the changelog - this only works in snapshot mode. Otherwise --since can be used to tell git-dch at which point it should start in the Git history.

The additional path arguments can be used to restrict the repository paths git-dch looks at. Setting path to debian/ is a good choice if upstream uses Git and all Debian packaging changes are restricted to the debian/ subdir. In more sophisticated cases (like backports) you can use --git-log to restrict the generated changelog entries further. E.g. by using --git-log="--author=Foo Bar".

OPTIONS

--debian-branch=branch_name

The branch in the Git repository the Debian package is being developed on, default is master.

--verbose, -v

verbose execution

--debian-tag=tag-format

tag format used, when tagging debian versions

--since=committish

start reading commit messages at committish

--auto

Guess the last commit documented in the changelog from the snapshot banner (or from the last tag if no snapshot banner exists).

--snapshot

create a snapshot release entry. This adds a snapshot release number and a warning banner to the changelog entry. The release version number is being autoincremented with every new snapshot release to avoid packages downgrades during snapshot testing.

--snapshot-number=expression

Python expression that gets eval()ed to the new snapshot number

--release

Remove any snapshot release banners and version suffixes, set the current distribution to unstable and open the changelog for final tweaking.

--git-log=git-log-options

options passed on verbatim to git-log(1)

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

.git/gbp.conf

per repository configuration

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

SEE ALSO

git-buildpackage (1), git-import-dsc (1), git-import-orig (1), git (1), git_load_dirs (1)

AUTHOR

Guido Guenther