[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFH: Where/How to setup RCS for new libfuse-ocaml package



Goswin von Brederlow a écrit :
> There is no pristine tarball and I don't intend to ever release
> anything without a debian dir. There is no upstream svn
> repository. There is just the fully debianized source. A native Debian
> package.

IMHO, I don't thing this is a good thing for something that is not
really Debian-specific. The upstream development can be quite different
from the Debian package evolution. Besides, uploading a new .orig.tar.gz
at each Debian change can be quite a waste of resources (if, for
example, that change is just adding a dependency to dh-ocaml^W some
package or renaming some variable because of policy change).

> Git is just fine. And upstream == Debian. Having two separate VCS just
> means twice the work commiting changes so I would really like to avoid
> that.

With a single Git repository, you can keep upstream and Debian
development in separate branches, and merge them when needed. This is
what is done with approx (have a look at its history with gitk). Even
without being upstream, you can import upstream history if they use Git,
and merge directly from branches of theirs.

> Can git-buildpackage work on native packages? Is there a quick guide on
> how to configure for that?

Sure. For example, dh-ocaml. There is not much differences from
non-native packages. If there is no upstream/pristine-tar branches,
git-buildpackage will assume it is a native package.

> The question isn't how to create a repository but how to arange the
> things you put into it.
> 
> For example for svn-buildpackage I would create
> /branches/
> /tags/
> /trunk/debian/svn-deblayout

In a nutshell, with Git, everything is organized in branches:

 * master: evolution of Debian packaging (with debian dir)
 * upstream: evolution of upstream (without debian dir), frequently
   merged into master (each merge corresponds to a "new upstream"
   changelog entry, and a bump in the upstream version number)
 * pristine-tar: used to generate tarballs (useful for non-native
   packages, even when there is no upstream tarball)


Cheers,

-- 
Stéphane


Reply to: