Differences between revisions 13 and 14
Revision 13 as of 2009-03-16 03:36:38
Size: 3864
Editor: anonymous
Comment: converted to 1.6 markup
Revision 14 as of 2009-08-30 05:37:59
Size: 3839
Editor: GeoffSimmons
Comment: DebianBug
Deletions are marked like this. Additions are marked like this.
Line 58: Line 58:
Since darcs in Debian is missing this feature (see Debian bug [[http://bugs.debian.org/462330|#462330]]), a workaround has been installed as [[http://alioth.debian.org/tracker/?func=detail&atid=200001&aid=310536&group_id=1|/usr/local/bin/darcs-email-changelog]]. Since darcs in Debian is missing this feature (see Debian bug DebianBug:462330), a workaround has been installed as [[http://alioth.debian.org/tracker/?func=detail&atid=200001&aid=310536&group_id=1|/usr/local/bin/darcs-email-changelog]].

Using darcs on Alioth

Creating a new public darcs repository (for a new project)

Darcs repository on darcs.debian.org doesn't get created with a new project, you have to request it at the Tracker: Support Requests.

<!> Note: Instead of registering a separate project(s) for packages, consider using the Collab Maint project; see ?Alioth/PackagingProject for more information. Once granted access to that project (DD have access by default, non-DD must request it) you can start hosting darcs project immediately by logging into alioth.debian.org and creating a darcs repository under /darcs/collab-maint/.

For separately registered projects, the darcs.debian.org admins will create a directory named /darcs/<project-group> owned by your project group.

To initialize your remote repository, you have to run under /darcs/<group> (<group> can be collab-maint if you don't have a dedicated project):

$ umask 002
$ mkdir <project>
$ cd <project>
$ darcs init

Darcsweb offers the possibility to show some special values, like repository description (desc), repository URL (url) and upstream repository URL (projurl). You need to modify the following files:

$ cd /path/to/<project>
$ mkdir -p _darcs/third_party/darcsweb
$ vim _darcs/third_party/darcsweb/desc
$ vim _darcs/third_party/darcsweb/url
$ vim _darcs/third_party/darcsweb/projurl

Then you have to put some real content in that empty repository. Either darcs pull on darcs.debian.org or darcs push from a remote host to darcs.debian.org. See below for the darcs URLs that you can use.

<!> Example: To push a project to an alioth collab-maint repository:

$ cd /path/to/<project>
$ darcs push <login>@darcs.debian.org:/darcs/collab-maint/<project>

Accessing repositories

They are accessible by darcs using http (read-only) or ssh (read/write), or by darcsweb at http://darcs.debian.org (read-only). For instance, you'll be able to check out your branch though ssh with:

$ darcs get <login>@darcs.debian.org:/darcs/<group>/<project>

Anonymous users will enjoy read-only access with following commands. The <group> could be e.g. package name or collab-maint if hosted collaboratively.

$ darcs get http://darcs.debian.org/darcs/<group>/<project>

Setting up hooks

Commit mails with diff

Since darcs in Debian is missing this feature (see Debian bug 462330), a workaround has been installed as /usr/local/bin/darcs-email-changelog.

To send diffstats to a mailing list and the PTS use:

$ cd <project>
$ cat >_darcs/prefs/defaults
  apply run-posthook
  apply posthook \
   TO=<alioth-project-name>-commits@lists.alioth.debian.org \
   BCC=<project>_cvs@packages.qa.debian.org \
   PROJECT=<alioth-project-name> \
   REPO_NAME=<project> \
   /usr/local/bin/darcs-email-changelog

Sending notices on IRC via CIA bots

Some hooks meant for CIA are there: http://cia.vc/doc/clients/

Using personal darcs repositories

It is also possible to have personal darcs repositories. Just log in on alioth, then

$ mkdir ~/public_darcs

and put your darcs repositories there, e.g. <project>.

After a few hours they will be automatically detected and listed on http://darcs.debian.org. The repositories are available through the following URLs:

$ darcs get http://darcs.debian.org/~<login>/<project>
$ darcs get <login>@darcs.debian.org:~/public_darcs/<project>


?CategoryAlioth