Building ekg2 for Debian
------------------------

The ekg2 source package uses quilt to apply and remove its patches. Please
refer to /usr/share/doc/quilt/README.source for information about how to use
quilt for source packages.

The quilt series is generated from the Git repository, using TopGit.
This process is documented in /usr/share/doc/topgit/HOWTO-tg2quilt.gz .

The ekg2 packages uses the following branch layout:

 - upstream: used to track upstream changes with git-svn.

   Usually follows "remote/trunk" but can be set to follow a release branch
   (e.g. "remote/0.3.x") if the following debian packages will be based on
   that.

   Do not commit anything on this branch except when you intend to dcommit it
   immediately.  This is because git-svn does not work well with merges, and
   requires rebasing, which in turn makes it hard to do distributed
   development.

 - debian: "upstream", plus debian-specific changes. Debian package versions
   are tagged on this branch.

 - fixes/*, features/*: topgit-controlled topic branches intended for including
   upstream.

 - autostuff: "upstream", plus files generated by running ./autogen.sh.
   Debian-revision-less package versions are tagged on this branch.

    Yes, we keep them in version control, as:
    - it saves CPU time on buildds (otherwise they would need to be generated
      on every architecture for every build attempt). Note that it still
      might be necessary if the Debian changes affect the autostuff build
      files, but that should be rare, as we have a rather good relationship
      with upstream and can push fixes there.
    - makes debugging easier if you know that the intermediate files were
      exactly like those on your repository

 - build: "autostuff" + "debian" are merged here. Contains the topgit-generated
   patches directory.

 - master: unused. However do not try deleting it, because git-svn will
   stubbornly recreate it at next rebase, causing confusion.

Please refer to file debian/WORKFLOW for a list of steps to take when preparing
a debian package from a new upstream snapshot.

 -- Marcin Owsiany <porridge@debian.org>  Sat, 02 Oct 2010 17:43:25 +0100

