照著 README 所言打 sudo make setup-adduser, 結果出現錯誤, 看起來是缺一些 package 無法產生文件。反正用不到文件, 看了一下 Makefile, 找出必要部份, 一步步自己 make, 跳過產生文件那步 即可:
- sudo make installetc
- sudo make pythoninstall
- sudo make adduser
- sudo make inituser
- sudo cp ~/.ssh/id_rsa.pub /etc/mercurial-server/keys/root/USER
- sudo -u hg /usr/local/share/mercurial-server/refresh-auth
第二步會將 key 加入 hg 帳號的 authorized_keys 裡。用 USER 執行 ssh hg@localhost 後看到以下的訊息表示 key 有設好:
mercurial-server: direct logins on the hg account prohibited
Connection to localhost closed.
有 root 後, 再來透過 repository hgadmin 來管比較方便, 也可以留 commit log:
- hg clone ssh://hg@localhost/hgadmin ~/hgadmin
- cd ~/hgadmin/
- mkdir -p keys/root/
- mkdir keys/root/USER
- cp PUBLIC_KEY_OF_USER_AT_HOST keys/root/USER/HOST
- hg add keys/root/USER/HOST
- hg ci -m 'Add USER@HOST with root permission'
- hg push
push 後就會更新結果。若需要做細部的設定, 參考官網文件修改 /etc/mercurial-server/access.conf。
沒有留言:
張貼留言