Suite to help with maintaining [Debian](http://www.debian.org) packages in [Git](http://git-scm.com) repositories. [[!toc]] ### 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 ### Manual For more information have a look at the [manual](http://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.html). ### Source Code 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). ### Debian packages Debian packages of git-buildpackage can be downloaded from the [[!debpkg git-buildpackage desc="Debian Archive"]]. Newer snapshots are sometimes available [here](http://honk.sigxcpu.org/projects/git-buildpackage/snapshots/). ### Bugreports For enhancements and feauture requests you can either use the [Debian bugtracking system](http://bugs.debian.org) or email [me](mailto:agx@sigxcpu.org) directly. ### Todo * [[!debbug git-buildpackage desc="bugs"]] filed in the Debian bugtracking system * more git-fast-import support * templating for git-dch ### debian/patches on a patch-queue branch I'm keeping all patches for a Debian package that is maintained on branch *foo* on a patch-queue branch *patch-queue/foo* since: * one can easily work with the unpatched (*foo*) and patched (*patch-queue/foo*) branches * patches can easily be dropped, added by modifying the patch-queue branch (no messing with *quilt add*, *dpatch-edit-patch*, *cdbs-edit-patch* or the like) * easy cherry-picking of patches for stable releases, etc. * easy forward porting of patches to new upstream versions by using *git rebase* on the *patch-queue/foo* branch (patches already applied upatream are detected automatically). * the generated patch in *debian/patches/* has all the necessary information to forward it upstream since it's auto generated via *git-format-patch*. Disadvantage: * no history on the *patch-queue/foo/* branch #### workflow: * create *patch-queue* branch if it doesn't exist: git checkout -b patch-queue/master * import patches from debian/patches to get a patches source tree one can easily work on: QUILT_PATCHES=debian/patches git-quiltimport debian/patches/series * work an patch-queue branch (add, remove, rebase, test) * switch back to master: git checkout master * regenerate the patches in *debian/patches/* using [redo-patches](http://honk.sigxcpu.org/projects/git-buildpackage/redo-patches): redo-patches * commit the result