3 dgit - tutorial for package maintainers of Debian-native packages
7 This document describes elements of a workflow for maintaining a
8 native Debian package using B<dgit>.
14 We expect that your git history is fast-forwarding.
18 You must be prepared to tolerate a small amount of
19 ugliness in your git history
20 in the form of merges which stitch
21 the dgit-generated archive view
22 into your maintainer history.
32 Benefit from dgit's safety catches. In particular, ensure that your
33 upload always matches exactly your git HEAD.
39 to downstream dgit users.
43 Incorporate an NMU with one command.
47 =head1 FIRST PUSH WITH DGIT
49 You do not need to do anything special to your tree
52 Simply prepare your git tree in the usual way, and then:
56 % dgit -wgf sbuild -A -c sid
57 % dgit -wgf --overwrite push
61 (Do not make any tags yourself: dgit push will do that.)
63 The --overwrite option tells dgit that you are expecting
64 that your git history is not a descendant of the
65 history which dgit synthesised from the previous
68 dgit will make a merge commit
70 but without making any code changes
73 which will be pushed to the dgit git server,
74 is fast forward from the dgit archive view.
76 =head1 SUBSEQUENT PUSHES
86 =head1 INCORPORATING AN NMU
96 Or, if you would prefer to review the changes,
102 % dgit diff HEAD..dgit/dgit/sid
106 If you do not merge the NMU into your own git history,
107 the next push will then require I<--overwrite>.