Hi all,

The Debian Haskell team has migrated a while back from per-package
repositories to a single repository which contains the packaging (only
debian/) for the vast majority of packages
(https://anonscm.debian.org/cgit/pkg-haskell/DHG_packages.git/). This
makes sense for us since the packaging is uniform enough that we can do
mass-changes to packages.

Now, this presents a small problem: Vcs-*, and more precisely Vcs-Git,
is supposed to point to a repository which represents only the given
package. Vcs-Git has support for branches, but not for subpaths within
the repository. This breaks a few (minor) workflows, e.g. vcswatch, so I
wonder if it makes sense to extend the policy to support also location
within the repository. Maybe other VCSes support this natively by not
pointing directly at the repository root, but at least git doesn't.

Such a change would touch, for example:

- vcswatch which wouldn't look at hardcoded /debian/changelog and
  /changelog
- debcheckout which could say "cd repo/path" after the checkout

A potential syntax for the Vcs-* fields would be:

Vcs-Git: https://anonscm.debian.org/git/pkg-haskell/DHG_packages.git/ p/ghc

or with branch:

Vcs-Git: https://anonscm.debian.org/git/pkg-haskell/DHG_packages.git/ -b 
experimental p/ghc

And the associated policy paragraph would now be:

"In the case of Git, the value consists of a URL, optionally followed by
the word -b and the name of a branch in the indicated repository,
following the syntax of the git clone command, and optionally followed
by a path specification. If no branch is specified, the packaging should
be on the default branch. The optional path name after the branch
specification defines where in a (shared) repository the sources for
this particular package live."

Thoughts?

regards,
iustin

Attachment: signature.asc
Description: PGP signature

Reply via email to