Slaven Rezic wrote:
David Golden wrote:
On Sun, Nov 1, 2009 at 2:01 PM, Slaven Rezic <sre...@cpan.org> wrote:
"url" is not enough to describe how to checkout from a CVS repository. At least username and password (for "cvs login") and url and module (for "cvs
-d url co module") are needed.

Can you give a specific example?  We're in overtime for finalizing the
spec, so we need to nail this quick.

For cvs we don't need the url parameter but rather:

repository => {
  type => "cvs",
  vc_spec => {
    username => "anonymous",
    password => "",
repository => ":pserver:anonym...@srezic.cvs.sourceforge.net:/cvsroot/srezic",
    module => "Tk-Pod",
    port => undef, # set if different from standard 2401
  },
  web => ...,
  ...
}

The contents inside vc_spec are completely VC-specific. For CVS it would be these parameters, other VCs could have other parameters (sorry, I don't know anything else but cvs, svn, and git).

Theoretetically the URL needed for svn or git could also go into such a vc_spec structure, but this would probably be too complicated.


Ah, there's already prior art. www.ohloh.net also needs the source repository (they call it "enlistment") fully specified. Here's what may be entered in ohloh's forms:

CVS:
Enter the source control URL (e.g. :pserver:anonymous:@myproject.cvs.sourceforge.net:/cvsroot/myproject)
  Username
  Password
  CVS module name

SVN:
Enter the source control URL (e.g. svn://mywebsite.org/svn/myproject/trunk)
  Username
  Password

Mercurial:
Enter the source control URL (e.g. http://www.mywebsite.org/pub/scm/hg/myproject)

Git:
Enter the source control URL (e.g. git://git.mywebsite.org/pub/scm/git/myproject.git)
  Enter an optional Git branch name

Bazaar:
  Enter the source control URL (e.g. bzr://www.mywebsite.org/myproject.bzr)


So I think the optional branch for git should be added to the spec.

Reply via email to