mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 16:31:02 +03:00
65b64640d1
The vast majority* of them are formatted like this in the source, so this basically reverts the output to how it looked before we got the minirst parser. *: the help on templating use four spaces for some examples and will now shown with an indentation of just two spaces.
219 lines
5.5 KiB
Plaintext
219 lines
5.5 KiB
Plaintext
notify extension - hooks for sending email notifications at commit/push time
|
|
|
|
Subscriptions can be managed through a hgrc file. Default mode is to print
|
|
messages to stdout, for testing and configuring.
|
|
|
|
To use, configure the notify extension and enable it in hgrc like this:
|
|
|
|
[extensions]
|
|
hgext.notify =
|
|
|
|
[hooks]
|
|
# one email for each incoming changeset
|
|
incoming.notify = python:hgext.notify.hook
|
|
# batch emails when many changesets incoming at one time
|
|
changegroup.notify = python:hgext.notify.hook
|
|
|
|
[notify]
|
|
# config items go here
|
|
|
|
Required configuration items:
|
|
|
|
config = /path/to/file # file containing subscriptions
|
|
|
|
Optional configuration items:
|
|
|
|
test = True # print messages to stdout for testing
|
|
strip = 3 # number of slashes to strip for url paths
|
|
domain = example.com # domain to use if committer missing domain
|
|
style = ... # style file to use when formatting email
|
|
template = ... # template to use when formatting email
|
|
incoming = ... # template to use when run as incoming hook
|
|
changegroup = ... # template when run as changegroup hook
|
|
maxdiff = 300 # max lines of diffs to include (0=none, -1=all)
|
|
maxsubject = 67 # truncate subject line longer than this
|
|
diffstat = True # add a diffstat before the diff content
|
|
sources = serve # notify if source of incoming changes in this list
|
|
# (serve == ssh or http, push, pull, bundle)
|
|
[email]
|
|
from = user@host.com # email address to send as if none given
|
|
[web]
|
|
baseurl = http://hgserver/... # root of hg web site for browsing commits
|
|
|
|
The notify config file has same format as a regular hgrc file. It has two
|
|
sections so you can express subscriptions in whatever way is handier for you.
|
|
|
|
[usersubs]
|
|
# key is subscriber email, value is ","-separated list of glob patterns
|
|
user@host = pattern
|
|
|
|
[reposubs]
|
|
# key is glob pattern, value is ","-separated list of subscriber emails
|
|
pattern = user@host
|
|
|
|
Glob patterns are matched against path to repository root.
|
|
|
|
If you like, you can put notify config file in repository that users can push
|
|
changes to, they can manage their own subscriptions.
|
|
|
|
no commands defined
|
|
% commit
|
|
adding a
|
|
% clone
|
|
updating working directory
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
% commit
|
|
% pull (minimal config)
|
|
pulling from ../a
|
|
searching for changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 1 changes to 1 files
|
|
Content-Type: text/plain; charset="us-ascii"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
Date:
|
|
Subject: changeset in test-notify/b: b
|
|
From: test
|
|
X-Hg-Notification: changeset 0647d048b600
|
|
Message-Id:
|
|
To: baz, foo@bar
|
|
|
|
changeset 0647d048b600 in test-notify/b
|
|
details: test-notify/b?cmd=changeset;node=0647d048b600
|
|
description: b
|
|
|
|
diffs (6 lines):
|
|
|
|
diff -r cb9a9f314b8b -r 0647d048b600 a
|
|
--- a/a Thu Jan 01 00:00:00 1970 +0000
|
|
+++ b/a Thu Jan 01 00:00:01 1970 +0000
|
|
@@ -1,1 +1,2 @@
|
|
a
|
|
+a
|
|
(run 'hg update' to get a working copy)
|
|
% fail for config file is missing
|
|
rolling back last transaction
|
|
pull failed
|
|
% pull
|
|
rolling back last transaction
|
|
pulling from ../a
|
|
searching for changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 1 changes to 1 files
|
|
Content-Type: text/plain; charset="us-ascii"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Test: foo
|
|
Date:
|
|
Subject: b
|
|
From: test@test.com
|
|
X-Hg-Notification: changeset 0647d048b600
|
|
Message-Id:
|
|
To: baz@test.com, foo@bar
|
|
|
|
changeset 0647d048b600
|
|
description:
|
|
b
|
|
diffs (6 lines):
|
|
|
|
diff -r cb9a9f314b8b -r 0647d048b600 a
|
|
--- a/a Thu Jan 01 00:00:00 1970 +0000
|
|
+++ b/a Thu Jan 01 00:00:01 1970 +0000
|
|
@@ -1,1 +1,2 @@
|
|
a
|
|
+a
|
|
(run 'hg update' to get a working copy)
|
|
% pull
|
|
rolling back last transaction
|
|
pulling from ../a
|
|
searching for changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 1 changes to 1 files
|
|
Content-Type: text/plain; charset="us-ascii"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Test: foo
|
|
Date:
|
|
Subject: b
|
|
From: test@test.com
|
|
X-Hg-Notification: changeset 0647d048b600
|
|
Message-Id:
|
|
To: baz@test.com, foo@bar
|
|
|
|
changeset 0647d048b600
|
|
description:
|
|
b
|
|
diffstat:
|
|
|
|
a | 1 +
|
|
1 files changed, 1 insertions(+), 0 deletions(-)
|
|
|
|
diffs (6 lines):
|
|
|
|
diff -r cb9a9f314b8b -r 0647d048b600 a
|
|
--- a/a Thu Jan 01 00:00:00 1970 +0000
|
|
+++ b/a Thu Jan 01 00:00:01 1970 +0000
|
|
@@ -1,1 +1,2 @@
|
|
a
|
|
+a
|
|
(run 'hg update' to get a working copy)
|
|
% test merge
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
created new head
|
|
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
(branch merge, don't forget to commit)
|
|
pulling from ../a
|
|
searching for changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 2 changesets with 0 changes to 1 files
|
|
Content-Type: text/plain; charset="us-ascii"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Test: foo
|
|
Date:
|
|
Subject: adda2
|
|
From: test@test.com
|
|
X-Hg-Notification: changeset 0a184ce6067f
|
|
Message-Id:
|
|
To: baz@test.com, foo@bar
|
|
|
|
changeset 0a184ce6067f
|
|
description:
|
|
adda2
|
|
diffstat:
|
|
|
|
a | 1 +
|
|
1 files changed, 1 insertions(+), 0 deletions(-)
|
|
|
|
diffs (6 lines):
|
|
|
|
diff -r cb9a9f314b8b -r 0a184ce6067f a
|
|
--- a/a Thu Jan 01 00:00:00 1970 +0000
|
|
+++ b/a Thu Jan 01 00:00:02 1970 +0000
|
|
@@ -1,1 +1,2 @@
|
|
a
|
|
+a
|
|
Content-Type: text/plain; charset="us-ascii"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Test: foo
|
|
Date:
|
|
Subject: merge
|
|
From: test@test.com
|
|
X-Hg-Notification: changeset 22c88b85aa27
|
|
Message-Id:
|
|
To: baz@test.com, foo@bar
|
|
|
|
changeset 22c88b85aa27
|
|
description:
|
|
merge
|
|
(run 'hg update' to get a working copy)
|