From e506ee7e5b4bd9d87299e0e55d5fa43b738c0933 Mon Sep 17 00:00:00 2001 From: Michael Prokop Date: Wed, 16 Jun 2010 17:52:13 +0200 Subject: move maintainer-notes.html to docs/ and install as /usr/share/doc/initramfs-tools/maintainer-notes.html Signed-off-by: Michael Prokop --- maintainer-notes.html | 306 -------------------------------------------------- 1 file changed, 306 deletions(-) delete mode 100644 maintainer-notes.html (limited to 'maintainer-notes.html') diff --git a/maintainer-notes.html b/maintainer-notes.html deleted file mode 100644 index 11149b8..0000000 --- a/maintainer-notes.html +++ /dev/null @@ -1,306 +0,0 @@ - - - - -Maintainer documentation for initramfs-tools - - - - - -
-
- -

Maintainer documentation for initramfs-tools

- -
- -

Table of Contents

- - - -
- -

1. Definitions

- -

- Note: This cheatpage assumes that you are using git-core 1.5.6 or newer. -

- - - - - -
version:version string
username:name of the alioth account
mailaddress:mailaddress of the user
- - -
- -

2. Preparations

- -
    - -
  1. Install required software (notice: git is named git-core on Debian/stable): -
    -# apt-get install git git-buildpackage dpkg-dev
    -
    -
  2. - -
  3. Set environment variables (e.g. through your ~/.bashrc or ~/.zshrc) for git and git-dch: -
    -% export GIT_AUTHOR_EMAIL=<mailaddress>
    -% export DEBEMAIL=<mailaddress>
    -% export GIT_COMMITTER_EMAIL=<mailaddress>
    -
    -
  4. - -
  5. Checkout repository (anonymous): -
    -% git clone git://git.debian.org/git/kernel/initramfs-tools.git
    -% cd initramfs-tools
    -
    -
  6. - -
  7. Checkout repository (with developer access): -
    -% git clone ssh://username@git.debian.org/git/kernel/initramfs-tools.git
    -% cd initramfs-tools
    -
    -
  8. - -
- - -
- -

3. Workflow for daily work

- -

3.1 Implement new features

- -
    - -
  1. Checkout new branch and switch to it: -
    -% git checkout -b username/short-descr-of-new-feature
    -
    -
  2. - -
  3. Hack and commit work: -
    -% $EDITOR $somefile
    -% git add $somefile
    -% git commit -s
    -
    -
  4. - -

    NOTE: Use 'Closes: #BUGID' for closing a bugreport, 'Thanks: Name -<mailaddress>' for giving credits in your commit message. git-dch will use -this information for generating the changelog using the --meta option later -on.

    - -
  5. Finally push your branch to alioth: -
    -% git push origin username/short-descr-of-new-feature
    -
    -
  6. - -
- -

3.2 Merge branches

- -
    - -
  1. Switch to the branch you want to merge: -
    -% git checkout username/new-feature
    -
    -
  2. - -
  3. Rebase to master: -
    -% git rebase master
    -
    -
  4. - -
  5. Switch to master branch and merge: -
    -% git checkout master
    -% git merge username/new-feature
    -
    -
  6. - -
  7. Push: -
    -% git push
    -
    -
  8. - -
  9. After branch is merged delete branch on server and locally: -
    -% git push origin :username/short-descr-of-new-feature
    -% git branch -d username/short-descr-of-new-feature
    -
    -
  10. - -
- -

3.3 Test specific branch

- -
    - -
  1. Checkout a specific branch iff branch is not already present locally: -
    -% git checkout -b somename/short-descr-of-new-feature origin/somename/short-descr-of-new-feature
    -
    -
  2. - -
  3. Checkout a specific branch iff branch is already present locally: -
    -% git checkout -b somename/short-descr-of-new-feature
    -
    -
  4. - -
  5. Adjust debian/changelog accordingly: -
    -git-dch --debian-branch="$(git branch | awk -F\* '/^* / { print $2}' )" --since=$(dpkg-parsechangelog | awk '/^Version:/ {print $2}') -S --id-length=7 --meta
    -
    -
  6. - -
  7. Build package: -
    -% git-buildpackage --git-debian-branch="$(git branch | awk -F\*\  '/^* / { print $2}' )" -tc
    -
    -
- - - -

4. Contribute

- -

TODO / WIP:

- -
    -
  1. Create patch: -
    -% git format-patch HEAD
    -
    -
- - - -

5 Releasing new version

- -
    - -
  1. Creating changelog: - -
    -% git-dch --debian-branch debian --release --since HASH
    -
    - -or more dynamically: - -
    -% git-dch --meta --release --since v$(dpkg-parsechangelog | awk '/^Version:/ {print $2}') --debian-branch="$(git branch | awk -F\*\  '/^* / { print $2}' )" [--id-length=7] [--full]
    -
    - -
  2. - -
  3. Releasing: -
    -% git commit -a -s -m "Releasing debian version version."
    -
    -
  4. - -
  5. Tagging: -
    -% git tag -s v"version" -m "release version"
    -
    -
  6. - -
  7. Pushing: -
    -% git push
    -% git push --tags
    -
    -
  8. - -
  9. Build in chroot and upload to ftp-master.
  10. - -
  11. Send mail announcing the new initramfs-tools version with subject -"initramfs-tools $VERSION release" to initramfs@vger.kernel.org, -debian-kernel@lists.debian.org + kernel-team@lists.ubuntu.com - including a -shortlog (generated through "git shortlog $TAG..").
  12. - -
- - -
- -

Ressources

- - - - - -
- -

Credits

- -
    -
  • Thanks to Daniel Baumann for his "Maintainer Cheatpage" which inspired this document
  • -
- - -
- -

--- Michael Prokop <mika@debian.org> -

- -
- -
- - - - -- cgit v1.2.3