1dpkg-mergechangelogs(1)           dpkg suite           dpkg-mergechangelogs(1)
2
3
4

NAME

6       dpkg-mergechangelogs - 3-way merge of debian/changelog files
7

SYNOPSIS

9       dpkg-mergechangelogs [option...] old new-a new-b [out]
10

DESCRIPTION

12       This program will use the 3 provided versions of the Debian changelog
13       to generate a merged changelog file. The resulting changelog is stored
14       in the file out or output to the standard output if that parameter is
15       not given.
16
17       Each entry is identified by its version number and they are assumed to
18       be not conflicting, they are simply merged in the right order (by
19       decreasing version number). When --merge-prereleases is used, the part
20       of the version number after the last tilde is dropped so that
21       1.0-1~exp1 and 1.0-1~exp5 are considered to be the same entry. When the
22       same version is available in both new-a and new-b, a standard line-
23       based 3-way merge is attempted (provided that the module
24       Algorithm::Merge is available — it's part of the package libalgorithm-
25       merge-perl — otherwise you get a global conflict on the content of the
26       entry).
27

OPTIONS

29       --merge-unreleased
30           Ignore the version number when the entries are marked as UNRELEASED
31           (since dpkg 1.21.0).
32
33           This is useful when you have diverging development for versions
34           that have not yet been released. For instance 2.1-1 is released,
35           then development happens for the new 2.2-1 and then for 2.3-1,
36           where it makes sense to just end with a coalesced entry for 2.3-1
37           including all the development done in 2.2-1.
38
39       -m, --merge-prereleases
40           Drop the part after the last tilde in the version number when doing
41           version comparison to identify if two entries are supposed to be
42           the same or not.
43
44           This is useful when you keep using the same changelog entry but you
45           increase its version number regularly. For instance, you might have
46           2.3-1~exp1, 2.3-1~exp2, ... until the official release 2.3-1 and
47           they are all the same changelog entry that has evolved over time.
48
49       --help
50           Show the usage message and exit.
51
52       --version
53           Show the version and exit.
54

ENVIRONMENT

56       DPKG_COLORS
57           Sets the color mode (since dpkg 1.18.5).  The currently accepted
58           values are: auto (default), always and never.
59
60       DPKG_NLS
61           If set, it will be used to decide whether to activate Native
62           Language Support, also known as internationalization (or i18n)
63           support (since dpkg 1.19.0).  The accepted values are: 0 and 1
64           (default).
65

LIMITATIONS

67       Anything that is not parsed by Dpkg::Changelog is lost during the
68       merge.  This might include stuff like comments which were not supposed
69       to be there, etc.
70

INTEGRATION WITH GIT

72       If you want to use this program to merge Debian changelog files in a
73       git repository, you have first to register a new merge driver in
74       .git/config or ~/.gitconfig:
75
76        [merge "dpkg-mergechangelogs"]
77           name = debian/changelog merge driver
78           driver = dpkg-mergechangelogs -m %O %A %B %A
79
80       Then you have to setup the merge attribute for the debian/changelog
81       file either in .gitattributes in the repository itself, or in
82       .git/info/attributes:
83
84        debian/changelog merge=dpkg-mergechangelogs
85
86
87
881.21.9                            2022-07-01           dpkg-mergechangelogs(1)
Impressum