0
ртутный-сервер работает на Ubuntu 12.04 LTSртутный-сервер крюк не работает
[email protected]:/etc$ hg --version
Mercurial Distributed SCM (version 2.0.2)
[email protected]:/etc$ dpkg -s mercurial-server
Package: mercurial-server
Version: 1.2-1
....
[email protected]:/etc/mercurial-server/remote-hgrc.d$ ls -ltr
total 12
-rw-r--r-- 1 root root 180 Oct 10 2011 logging.rc
-rw-r--r-- 1 root root 139 Oct 10 2011 access.rc
-rw-r--r-- 1 root root 74 Mar 13 22:14 check.rc
[email protected]:/etc/mercurial-server/remote-hgrc.d$ cat check.rc
[hooks]
pretxncommit.author_check = /SOURCE/mercurial-server/validate.sh
#manually added here too
[email protected]:/etc/mercurial-server/remote-hgrc.d$ cat ~hg/repos/hgadmin/.hg/hgrc
# WARNING: when these hooks run they will entirely destroy and rewrite
# ~/.ssh/authorized_keys
[extensions]
hgext.purge =
[hooks]
changegroup.aaaab_update = hg update -C default > /dev/null
changegroup.aaaac_purge = hg purge --all > /dev/null
changegroup.refreshauth = python:mercurialserver.refreshauth.hook
pretxncommit.author_check = /SOURCE/mercurial-server/validate.sh
[email protected]:/etc/mercurial-server/remote-hgrc.d$ cat /SOURCE/mercurial-server/validate.sh
#!/bin/bash
echo "REMUSR:$REMOTE_USER"
echo "ATHR:`hg tip --template "{author}\n"`b"
exit 1
[email protected]:~$ sudo -u hg cat ~hg/.ssh/authorized_keys
no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command="/usr/share/mercurial-server/hg-ssh root/user1/user1.pub" ssh-rsa AAAAB3xOMN8ZiF [email protected]
no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command="/usr/share/mercurial-server/hg-ssh users/user2/user2.pub" ssh-rsa AAAAB3N..0HchQQw== [email protected]
После этого с локального компьютера (ОС Windows) я клонировал TestProject, измененными поручены, толчок и это был преуспевающим без ошибок или message.I пытался это как с начальным пользователем/ключом и пользователем/ключом добавляется через hgadmin толчок
D:\hg\testproj>hg push
pushing to ssh://[email protected]/testproj
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 1 changes to 1 files
Какую версию Mercurial-сервера вы используете? Вам не нужно добавлять его в ~ hg/repos/hgadmin/.hg/hgrc, если вы не хотите действовать конкретно в репозитории hgadmin. Захваты серверов Mercurial вступают в силу только тогда, когда к репозиториям обращаются через ssh, и когда файл ~ hg/.ssh/authorized_keys был создан с помощью refresh-auth, был запущен как пользователь «hg». Вы получаете доступ через SSH? Что находится в authorized_keys? –
@PaulCrowley Я обновил свой вопрос – yodhevauhe
@PaulCrowley обновлен ~ hg/.ssh/authorized_keys content – yodhevauhe