Copyright (C) 2008 Daniel Baumann <daniel@debian.org> This information is free: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This work is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL-3 file.
Note: This cheatpage assumes that you are using git-core 1.5.6 or newer.
name of the commit mailinglist | |
name of the cia project | |
name of the source package of your program | |
name of the alioth project | |
debian version string | |
name of the alioth account | |
upstream version string |
# apt-get install git-core
# apt-get install pristine-tar
# apt-get install git-buildpackage
package _version .orig.tar.gz
.$ mkdirprogram $ cdprogram $ git init --shared
$ git add . $ git commit -a -m "Adding upstream version." $ git tag -a -m "Tagging upstream version
version ." upstream/
version
version
$ git branch -m master upstream
$ pristine-tar commit -m "Adding pristine-tar versionversion ." ../program _version .orig.tar.gz
$ git branch debian
$ cd .. $ git clone --bareprogram program .git $ cdprogram .git
$ echo "project /program " > description
$ cat >> config << EOF [hooks] cia-project =ciaproject mailinglist =changeslist @lists.alioth.debian.org EOF $ mv hooks/post-receive hooks/post-receive.orig $ cat > hooks/post-receive << EOF #!/bin/sh exec /usr/local/bin/git-commit-notice EOF $ chmod 0755 hooks/post-receive $ cd ..
$ scp -rpackage .gitusername @alioth.debian.org:/git/project
$ git clone ssh://username @git.debian.org/git/project /package .git
$ cdpackage $ git checkout -b upstream origin/upstream $ git checkout -b pristine-tar origin/pristine-tar
$ git checkout debian
$ cdpackage $ git checkout debian
$ git commit -a -m "My commit message. "
$ git push
$ cdpackage $ git checkout upstream
$ rm -rf *
$ git add . $ git commit -a -m "Adding upstream versionversion ."
$ git tag -a -m "Tagging upstream versionversion ." upstream/version
$ pristine-tar commit -m "Adding pristine-tar versionversion ." ../package _version .orig.tar.gz
$ git checkout debian
$ git cherry-pick -n upstream $ git commit -a -m "Merging upstream versionversion
$ git push $ git push --tags
$ git-dch --debian-branch debian --release --sinceHASH
$ git commit -a -m "Releasing debian versionversion -revision ."
$ git tag -a -m "Tagging debian versionversion -revision ." debian/version -revision
$ git push $ git push --tags
$ pristine-tar checkoutpackage _version .orig.tar.gz
-- Daniel Baumann <daniel@debian.org> Sun, 27 Jan 2008 10:47:00 +0100