1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
General Maintenance
-------------------
This package is maintained in Git in the collab-maint on Alioth (for
URLs see debian/control).
The maintainer uses git-buildpackage with the "--git-export-dir"
option to build the package from the Git working copy, although
"debuild" and "dpkg-buildpackage" should also work (but will leave the
checkout in a modified state).
Importing a New Upstream Release
--------------------------------
We want to be able to use Git to cherry-pick fixes from upstream, but
we want to base the Debian packages on the upstream tarball releases.
The slightly complicated method outlined below also creates a more
useful git history, including upstream changes in the ancestry of the
Debian version. The method has been adapted from the openafs'
debian/README.source.
Follow the following procedure to import a new upstream release:
1. Ensure that you have the g-wrap upstream Git repository available
as a remote in the Git repository where you're doing the packaging
work and it's up to date:
git remote add savannah git://git.sv.gnu.org/g-wrap.git
git fetch savannah
This will be required to locate the tag for the new upstream
release.
5. Determine the release tag corresponding to this tarball. At the
time of this writing, upstream uses tags in the form:
v<version>
, where <version> is the version number. This convention might
change, so double-check with "git tag -l".
6. Import the upstream source from the tarball with:
debian/import-upstream <tarball> <upstream-tag> <local-tag>
where <tarball> is the tarball release downloaded from upstream,
<upstream-tag> is the corresponding tag from the upstream Git
repository, and <local-tag> is of the form upstream/<version> where
<version> is the non-Debian portion of the package version number.
(In other words, not the dash and the Debian revision.)
7. Commit the tarball to the repository with pristine-tar, using the
new local tag as the reference:
pristine-tar commit <tarball> <local-tag>
8. Merge the new upstream source into the master branch:
git checkout master
git merge <local-tag>
where <local-tag> is the tag you used above. You can also just
merge with the upstream branch; either is equivalent.
9. Flesh out the changelog entry for the new version with a summary of
what changed in that release, and continue as normal with Debian
packaging.
-- Andreas Rottmann <rotty@debian.org>, Fri, 8 Jun 2012 13:04:40 +0200
|