summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2013-06-26 21:35:09 +0200
committerGuido Günther <agx@sigxcpu.org>2013-06-26 21:35:09 +0200
commit1147e1931a2c42929f7fc1bbb097d3319adbc508 (patch)
tree0420c71d03c26d73292312ed40890789a26d9833
parent3a3744509d4d4d5ee838d42cca77953186eb3d5b (diff)
Use new gbp <command> syntax
-rw-r--r--development/debian_packages_in_git.mdwn32
-rw-r--r--projects/git-buildpackage.mdwn25
-rw-r--r--projects/git-buildpackage/gbp.conf6
3 files changed, 31 insertions, 32 deletions
diff --git a/development/debian_packages_in_git.mdwn b/development/debian_packages_in_git.mdwn
index 57f6d1c..b68ae5c 100644
--- a/development/debian_packages_in_git.mdwn
+++ b/development/debian_packages_in_git.mdwn
@@ -20,14 +20,14 @@ Assuming the Debian source package has it's patches in *debian/patches* and thes
* Create *patch-queue* branch and import *debian/patches* onto it using gbp-pq:
cd $REPO
- gbp-pq import
+ gbp pq import
* This will switch you to the patch-queue branch automatically. If you started from *master* the patch-queue branch will be called *patch-queue/master*.
* Now you can work on the patch-queue branch (add, remove, rebase, test) to get your patches into shape:
* To add what will later become a patch in *debian/patches/* simply make a commit. The first line of the commit message will become the patch name later. The following lines include the details of what the patch does.
* To remove or edit commits use *git rebase -i master*. The [git documentation][] explains how to work with git-rebase.
* Regenerate the patches in *debian/patches/* using gbp-pq. This will switch you back to *master* and regenerate the patches using *git-format-patch(1)*:
- gbp-pq export
+ gbp pq export
* Commit the result either by using *gbp-add-patch* or simply
git add debian/patches
@@ -36,14 +36,14 @@ Assuming the Debian source package has it's patches in *debian/patches* and thes
* Build the package
* After importing a new upstream version you can use the following commands to refresh *debian/patches*:
- gbp-pq rebase
+ gbp pq rebase
git checkout master
- gbp-pq export
+ gbp pq export
* If a package doesn't have any patches yet, these are the steps to add your first patch:
1. Launch an import, this will switch to the proper branch
- gbp-pq import
+ gbp pq import
2. Create your first patch:
* Edit files / Test
@@ -51,7 +51,7 @@ Assuming the Debian source package has it's patches in *debian/patches* and thes
3. Back to the master branch, generate the Quilt patch set
git checkout master
- gbp-pq export
+ gbp pq export
4. Commit you first patch
git add -a debian/patches/
@@ -64,7 +64,7 @@ If you want to pick the changelog message from the patch see
The easiest way is to not push out any patch-queue/* branches at all. They can be recreated by any team member easily by using
git branch -d patch-queue/master
- gbp-pq import
+ gbp pq import
However you *can* push out patch-queue branches. Other team members must just be aware that that branches in the *patch-queue/* namespace are being rebased frequently.
@@ -84,23 +84,23 @@ If you're using option *--git-export-dir* option already there's no problem sinc
## Working from a patch-queue branch
Instead of building from *master* build from *patch-queue/master* prepared by *gbp-pq* as describe above. This branch has the patches already applied as dpkg-source expects it:
- gbp-pq import
- git-buildpackage --git-debian-branch=patch-queue/master
+ gbp pq import
+ gbp buildpackage --git-debian-branch=patch-queue/master
Build and test...
git checkout master
- gbp-pq export
+ gbp pq export
# Cloning a repository
-If you use *gbp-clone* instead of *git clone* to clone a remote repository it will automatically set up the *debian*, *upstream* and *pristine-tar* branches for you. The [manual][] explains the terminology.
+If you use *gbp clone* instead of *git clone* to clone a remote repository it will automatically set up the *debian*, *upstream* and *pristine-tar* branches for you. The [manual][] explains the terminology.
# Keeping a repository up to date
-After initially cloning with *gbp-clone* you can run *gbp-pull* to update your
+After initially cloning with *gbp clone* you can run *gbp pull* to update your
*debian*, *upstream* and *pristine-tar* branches from the remote site. So the
complete workflow for simple team maintenance looks like this:
# Initially clone the repo once
- gbp-clone git://git.debian.org/pkg-libvirt/gtk-vnc.git
+ gbp clone git://git.debian.org/pkg-libvirt/gtk-vnc.git
cd gtk-vnc
Work on that clone, commit, release, push, etc. Now after a couple of days you
@@ -108,14 +108,14 @@ want to make more changes but don't know if another developer worked on it. So
you do:
# Update to what others might have pushed
- gbp-pull
+ gbp pull
This will update all necessary branches to what other developers might have
pushed in the meantime. If you're also using a patch-queue as described above
you can refresh that too in one step:
# Update to what others might have pushed and rebuild patch-queue
- gbp-pull --redo-pq
+ gbp pull --redo-pq
This will additionally drop your current patch-queue branch and recreate it from debian/patches.
@@ -126,7 +126,7 @@ I keep backports on a separate *bpo-<release>* branch like *bpo-lenny*:
git merge debian/<version-currently-in-testing>
<resolve conflict in debian/changelog>
<fix up stuff needed for backport>
- git-buildpackage --git-pbuilder --git-dist=lenny -sa -v <last-backported-version> --git-debian-branch=bpo-lenny
+ gbp buildpackage --git-pbuilder --git-dist=lenny -sa -v <last-backported-version> --git-debian-branch=bpo-lenny
In order to avoid the merge conflict in the changelog have a look at *dpkg-mergechangelogs(1)*. To create the necessary cowbuilder chroot for Lenny use:
diff --git a/projects/git-buildpackage.mdwn b/projects/git-buildpackage.mdwn
index db8d8e4..53e0b3c 100644
--- a/projects/git-buildpackage.mdwn
+++ b/projects/git-buildpackage.mdwn
@@ -5,19 +5,19 @@ Suite to help with maintaining [Debian](http://www.debian.org) packages in [Git]
### Tools
GBP ships the following tools:
-* *git-import-{dsc,dscs}*: import existing Debian source packages into a git repository
-* *git-import-orig*: import a new upstream version into the git repository
-* *git-buildpackage*: build a package out of a git repository, check for local modifications and tag appropriately
-* *git-dch*: generate Debian changelog entries from Git commit messages
-* *gbp-pq*: maintain *debian/patches* on a patch queue branch
-* *gbp-clone*: clone a remote repository and make it ready for *git-buildpackage*
-* *gbp-pull*: pull from a remote repository and update the necessary branches
-* *gbp-create-remote-repo*: mirror your git repository to a remote side
+* *gbp import-{dsc,dscs}*: import existing Debian source packages into a git repository
+* *gbp import-orig*: import a new upstream version into the git repository
+* *gbp buildpackage*: build a package out of a git repository, check for local modifications and tag appropriately
+* *gbp dch*: generate Debian changelog entries from Git commit messages
+* *gbp pq*: maintain *debian/patches* on a patch queue branch
+* *gbp clone*: clone a remote repository and make it ready for *gbp buildpackage*
+* *gbp pull*: pull from a remote repository and update the necessary branches
+* *gbp create-remote-repo*: mirror your git repository to a remote side
There are some helpers in */usr/share/doc/git-buildpackage/examples/*:
-* *gbp-posttag-push*: posttag hook for *git-buildpackage* to push out the necessary changes to a remote repository after a release
-* *gbp-add-patch*: Commits a patch to the current branch and uses the Path Header for the commit message, useful after *gbp-pq* *export*.
+* *gbp-posttag-push*: posttag hook for *gbp buildpackage* to push out the necessary changes to a remote repository after a release
+* *gbp-add-patch*: Commits a patch to the current branch and uses the Path Header for the commit message, useful after *gbp pq export*.
[[!template id=flattr thing="48091" name="Git-buildpackage"]]
@@ -32,7 +32,7 @@ The source code is available via git (of course):
git clone http://honk.sigxcpu.org/git/git-buildpackage.git
-You can browse the source code online via [git.debian.org](http://git.debian.org/?p=users/agx/git-buildpackage.git;a=summary).
+You can browse the source code online via [git.debian.org](http://git.debian.org/?p=users/agx/git-buildpackage.git;a=summary). There's also a clone on [github](https://github.com/agx/git-buildpackage).
### Debian packages
Debian packages of git-buildpackage can be downloaded from the [[!debpkg git-buildpackage desc="Debian Archive"]]. Git snapshots are available [here](http://honk.sigxcpu.org:8001/job/git-buildpackage/).
@@ -48,8 +48,7 @@ Here's my current [[gbp.conf]].
* [Chef Cookbook for gbp][1]
### Todo
-* use git-fast-import in git-import-dsc(s) ([[!debbug 506211]])
-* templating for git-dch ([[!debbug 536719]]. [[!debbug 529332]])
+* templating for gbp dch ([[!debbug 536719]]. [[!debbug 529332]])
* translate the manual
* [[!debbug git-buildpackage desc="bugs"]] filed in the Debian bugtracking system
diff --git a/projects/git-buildpackage/gbp.conf b/projects/git-buildpackage/gbp.conf
index 3065548..7da678d 100644
--- a/projects/git-buildpackage/gbp.conf
+++ b/projects/git-buildpackage/gbp.conf
@@ -5,7 +5,7 @@ keyid = 0x3f3e6426
# use pristine tar by defaul
pristine-tar = True
-[git-dch]
+[dch]
# Parse meta tags like Closes: from commit messages
meta = True
# Add seven digits of the commits sha1 to the commit message
@@ -17,7 +17,7 @@ full = True
# Ignore these in commit messages
ignore-regex = (Signed-off|Acked)-by:
-[git-buildpackage]
+[buildpackage]
# Automatically push to remote repo after tagging a new release
posttag = /usr/share/doc/git-buildpackage/examples/gbp-posttag-push
# Run Lintian after a succesful build
@@ -27,6 +27,6 @@ builder = dpkg-buildpackage -i -I -uc -us
# Clean command
cleaner = /bin/true
-[git-import-orig]
+[import-orig]
# Automatically forward the changelog after importing a new upstream version
postimport = git-dch -N%(version)s -S -a --debian-branch=$GBP_BRANCH