123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- ===========================================
- Debian source package for ‘python-lockfile’
- ===========================================
- Package maintenance in VCS
- ==========================
- The ‘debian/control’ file declares the VCS repository used for
- tracking the Debian package maintenance work.
- VCS branches for package maintenance
- ------------------------------------
- The source for the Debian packaging is managed in these conventional
- Git branches:
- * master: The current released code base.
- * packaging: Debian packaging development branch.
- * upstream: Upstream source code base, as imported from tarballs.
- * pristine-tar: Metadata for reproducibly generating upstream tarball.
- Work on a release in VCS
- ------------------------
- * Ensure the ‘upstream’ branch contains the correct upstream source.
- * Ensure the ‘pristine-tar’ branch contains the corresponding metadata
- for the pristine upstream source tarball.
- * In the ‘packaging’ branch, create a new Debian changelog entry.
- Because the release is not complete, many aspects have not been
- decided and should not be recorded in the VCS:
- * The target destination (in the header) is “UNRELEASED”.
- * The person and timestamp of the release is undecided, so should be
- empty: the signature line should have no content, just the “ --”
- leader.
- * While working on the package, temporarily finalise the signature
- line for testing the build.
- This ephemeral state should not be part of the VCS history, though,
- so do not commit that finalised changelog entry; revert it to the
- above state to continue development.
- Build the source package from VCS
- ---------------------------------
- * Ensure the ‘packaging’ branch contains all the changes that are
- intended for the release to Debian.
- * Until the work is ready for release, do not commit a finalised
- Debian changelog entry. The changelog entry should be in the state
- described in “Work on a release in VCS”, above.
- This correctly leaves the decision of which destination for the
- upload, who uploads and when, to the point in time where that
- decision is made: the time of finalising the release.
- * Rebase a working branch, e.g. ‘wip/packaging/4.2+dfsg.1-1’, from the
- HEAD of ‘packaging’.
- * In this branch, finalise the ‘debian/changelog’:
- * Declare a release name, e.g. “* The “Ananta Bijoy Das” release.”
- * Set the target distribution, e.g. “unstable”.
- * Set the signature line containing the correct person and timestamp,
- e.g. “Ben Finney <bignose@debian.org> Tue, 09 Aug 2016 06:05:28 +1000”.
- * Commit the finalised changelog with a commit message of the form
- “Finalise release “4.2+dfsg.1-1”.”
- * Test the source package in ‘master’:
- * Merge the ‘upstream’ branch to ‘master’, with the commit message
- “Merge upstream version “4.2+dfsg.1”.”.
- * Merge – but *do not yet* commit – the work-in-progress release
- branch ‘wip/packaging/4.2+dfsg.1-1’, into ‘master’.
- * Build the source package from the resulting working tree.
- * Test the source package by building it in a Sbuild or Pbuilder
- environment, with all Lintian checks enabled.
- * Upload the successfully-built source package to Debian.
- * Only when the package builds satisfactorily from the merged working
- tree in ‘master’:
- * Commit the merged release to ‘master’, with the commit message of
- the form “Merge Debian packaging for release “4.1+dfsg.1-2”.”.
- * Create and sign a tag for the release, ‘debian/4.2+dfsg.1-1’ with
- the commit message “Debian release “4.2+dfsg.1-1.”.
- * Prepare the ‘packaging’ branch for ongoing work:
- * Switch to the ‘packaging’ branch.
- * Fast-forward merge the finalised changelog from
- ‘wip/packaging/4.2+dfsg.1-1’.
- * Delete the work-in-progress branch ‘wip/packaging/4.2+dfsg.1-1’.
- * Optionally: Create a new work-in-progress for an upcoming release,
- as described in “Work on a release in VCS”, above.
- -- Ben Finney <bignose@debian.org>, Fri, 19 Aug 2016 21:48:44 +1000
|