manager git repository. (was Re: [SCM] bristol/master: Import Debian patch 0.60.11-3)
Herbert Fortes
terberh at gmail.com
Mon Oct 31 17:05:51 UTC 2016
Hi,
I am finally reading about how to manage a
git repository in a way Debian Multimedia
Team do.
>
> in general: do you packaging *within* the git repository.
> once the git-repository is ready, we generate source-orig and debian
> tarballs (and all the other foo) from the repo, not the other way round.
> so don't do the fixes outside and then try to batch-apply them into the
> repo. (this basically makes the "tar -xvf ../bristol*debian.tar.xz" step
> obsolete)
>
> then make small *atomic* commits. a good guideline for the atomicity of
> a commit is: one d/changelog line equals one commit (in an ideal world,
> where you don't make any errors).
> it is encouraged to use `gbp-dch` to generate a new (and to be manually
> revised) d/changelog releaseentry.
>
> a single commit for a new upload is usually too coarse (even uploads
> that fix minor things usually have two commits: one for the change; and
> one for finalizing the changelog).
>
>
> btw git makes it easy to learn from others: just fire up `gitk` and see
> what people committed in the past (or use `git log` if you are going
> frugal).
> also i find that `git gui` can help tremendously with creating atomic
> commits, even if you have files that have changes that should go into
> different commits. (you can do that from the cmdline as well, but i keep
> forgetting how)
>
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:
Finalize
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
- control:
- Standards-Version
- Build-Depends
- Vcs*
- Depends
- copyright: update
- dvd-slideshow.docs
- remove .html entry. These files have the same
information manpages have.
- rules
- remove entry about .html files.
Working in debian directory I only need to 'git commit -a'
each file I edited.
git-dch
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
Are my steps correct ?
Regards,
Herbert
More information about the pkg-multimedia-maintainers
mailing list