manager git repository. (was Re: [SCM] bristol/master: Import Debian patch 0.60.11-3)
IOhannes m zmölnig (Debian/GNU)
umlaeute at debian.org
Mon Oct 31 18:43:21 UTC 2016
On 10/31/2016 06:05 PM, Herbert Fortes wrote:
> I am finally reading about how to manage a
> git repository in a way Debian Multimedia
> Team do.
> I am packaging dvd-slideshow (a team upload). It is a new release. I think
> I should use 'git import-orig --pristine-tar', but an 'uploader' already
> started the work and the upstream version was imported already. The steps
> until now:
> Import Upstream version 0.8.6.1
> Merge tag 'uptream/0.8.6.1'
> (work in three patches)
> 'git gui' is been a big help. Thanks.
> What I need to do is work in debian directory (git checkout master):
> - refresh some more patches and 2 were created.
> - edit:
> - compat: 10
if possible i would stay at compat=9
it makes backporting much easier.
unless of course compat=10 makes the packaging *much* cleaner.
> - control:
> - Standards-Version
> - Build-Depends
> - Vcs*
> - Depends
i'm not sure what you mean with this enumeration.
but yes, you should make sure that all these things are correct and
> - copyright: update
well, yes: if needed .-)
> - dvd-slideshow.docs
> - remove .html entry. These files have the same
> information manpages have.
> - rules
> - remove entry about .html files.
i cannot make any meaningful comment on this (without cross-checking
with the actual package)
> Working in debian directory I only need to 'git commit -a'
> each file I edited.
no, not really.
your commits should be *meaningful* chunks grouped by task.
e.g. if you update Standards-Version, B-D, Depends and Vcs-* stanzas,
all of them in debian/control, these changes have nothing in common
(although they all touch the same file).
you should thereore create multiple commits: 1 for updating the
standards-version, one of updating the vcs-* stanzas, one for updating
also a commit could contain multiple files (e.g. raising compat level
would require an update to both d/compat and the B-D in d/control)
> git tag -s debian/0.8.6.1-1 -m "Debian release 0.8.6.1-1"
> git push origin master upstream pristine-tar --follow-tags --dry-run # to check
> # if ok
> gbp buildpackage
the git-tag should be created by the uploader, *when the package gets
also "gbp buildpackage" can tag for you ("--git-tag" option), you
shouldn't create the tags manually (to not get epochs wrong).
so i would do:
1 create a new changelog entry with the new version (possibly using
'git-dch'; make sure to fix the generated changelog); leave the target
distribution at UNRELEASED.
2 commit the changelog: `git commit debian/changelog -m "updated changelog`)
3 build the package `gbp buildpackage`
4 run lintian (or have gbp do that for you)
5 if there are any build issues or lintian problems, fix them, commit
them; go back to #1
6 once the package creates cleanly, push your changes, and ask for review.
7 if needed, go back to #1
8 if everything is fine, fix the debian/changelog to its final form (and
set target distro to "unstable")
9 rebuild for a source-only upload (if applicable) and automatically
sign: `gbp buildpackage --git-tag --changes-option=-S`
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 833 bytes
Desc: OpenPGP digital signature
More information about the pkg-multimedia-maintainers