Mercurial .hgrc уведомить крючок - PullRequest
2 голосов
/ 04 мая 2010

Может кто-нибудь сказать мне, что неправильно в моей конфигурации .hgrc ? Я пытаюсь использовать gmail для отправки электронной почты после каждого нажатия и / или подтверждения.

.hgrc

[paths]
default = ssh://www.domain.com/repo/hg

[ui]
username = intern <user@domain.com>
ssh="C:\Program Files (x86)\Mercurial\plink.exe" -ssh -i "C:\Program Files (x86)\Mercurial\key.pub"

[extensions]
hgext.notify = 

[hooks]
changegroup.notify = python:hgext.notify.hook
incoming.notify = python:hgext.notify.hook

[email]
from = user@domain.com

[smtp]
host = smtp.gmail.com
username = user@gmail.com
password = sure
port = 587
tls = true

[web]
baseurl = http://dev/...

[notify]
sources = serve push pull bundle
test = False
config = /path/to/subscription/file
template = \ndetails:   {baseurl}{webroot}/rev/{node|short}\nchangeset: {rev}:{node|short}\nuser:      {author}\ndate:      {date|date}\ndescription:\n{desc}\n
maxdiff = 300

Error

Incoming comand failed for P/project. running ""C:\Program Files (x86)\Mercurial\plink.exe" -ssh -i "C:\Program Files (x86)\Mercurial\key.pub" user@domain.com "hg -R repo/hg serve --stdio""
sending hello command
sending between command
remote: FATAL ERROR: Server unexpectedly closed network connection
abort: no suitable response from remote hg!
, error code: -1
  running ""C:\Program Files (x86)\Mercurial\plink.exe" -ssh -i "C:\Program Files (x86)\Mercurial\key.pub" user@domain.com "hg -R repo/hg serve --stdio""
sending hello command
sending between command
remote: FATAL ERROR: Server unexpectedly closed network connection
abort: no suitable response from remote hg!

Ответы [ 3 ]

2 голосов
/ 04 мая 2010

Вы выполнили шаги, подробно описанные в "AccessingSshRepositoriesFromWindows" ?

Если да, вы все равно можете попробовать:

Plink.exe также имеет аргумент -batch, который указывает plink работать не в интерактивном режиме.
Любое действие, которое обычно требует взаимодействия с пользователем (например, новый ключ хоста), приведет к немедленному завершению работы plink, а не к остановке.
При сбое операции ssh вы можете использовать аргумент --debug, чтобы выяснить, что пошло не так .

1 голос
/ 08 марта 2011

Я считаю, что у вас должен быть локальный ключ, а открытый ключ отправляется на целевой компьютер. Кажется странным, что он вообще подключится.

0 голосов
/ 04 июля 2013

Проблема может быть связана с отправкой, а не с отправкой электронной почты с использованием расширения уведомления.

Если вы правильно следовали инструкциям, возможно, у вас возникли проблемы с открытым ключом и закрытым ключом.

Вам необходимо отредактировать author_keys на вашем сервере в папке .ssh вашего пользователя и поместить открытый ключ вашего ключа в этот файл.

Закрытый ключ вашего ключа, который вы будете использовать на клиенте со зрелищем (кнопка Добавить ключ).

Я рекомендую использовать другой почтовый сервис вместо gmail, может быть, если вы отправляете много автоматических писем. gmail может поместить ваш ip в черный список и заблокировать электронные письма.

...