# HG changeset patch # User Philippe Pepiot # Date 1571146256 -7200 # Node ID d177d8ab4fd3bd7cbfb773688136a3c023e42fb0 # Parent d242a1692907746187b06dd2c0058d3c6ad8c6c6 Document mercurial configuration for contributing * how to use master/review repositories * how to send the "Available at" command in patchbomb emails * how to add the "cubicweb" flag in patchbomb emails * how to use our "jenkins" mercurial extension Closes #17243538 diff -r d242a1692907 -r d177d8ab4fd3 README --- a/README Fri Oct 11 12:42:35 2019 +0200 +++ b/README Tue Oct 15 15:30:56 2019 +0200 @@ -78,3 +78,34 @@ Mailing list: https://lists.cubicweb.org/mailman/listinfo/cubicweb-devel Patchbomb extension: https://www.mercurial-scm.org/wiki/PatchbombExtension Good practice on sending email patches: https://www.mercurial-scm.org/wiki/ContributingChanges#Emailing_patches + +Full .hg/hgrc example for contributors having ssh access to ``hg.logilab.org`` : + + [paths] + default = https://hg.logilab.org/master/cubicweb + default-push = ssh://hg@hg.logilab.org/review/cubicweb + + [email] + to = cubicweb-devel@lists.cubicweb.org + + [patchbomb] + publicurl = https://hg.logilab.org/review/cubicweb + flagtemplate = "{separate(' ', 'cubicweb', flags)}" + + [jenkins] + url = https://jenkins.logilab.org/ + job = cubicweb-default + +If you don't have ssh access to ``hg.logilab.org``, you can use your own Mercurial server and +change ``default-push`` and ``publicurl`` accordingly. +A list of services that provides hosting of Mercurial repositories is available +on https://www.mercurial-scm.org/wiki/MercurialHosting. + +* ``hg pull`` will pull on master repo (public changesets). +* ``hg push`` will push on review repo using ssh. +* When sending an email to the list, it will add a "Available at" with command + to pull the draft series on the public repo. +* Using https://hg.logilab.org/master/logilab/devtools/file/tip/hgext/jenkins.py + mercurial extension, ``hg show jenkins`` display jenkins build status for + each changeset. Read https://www.mercurial-scm.org/wiki/UsingExtensions to learn how + to enable a new extension in mercurial.