Compartir repositorios de Mercurial con mercurial-server
Posted on sáb 20 agosto 2011 in Tutorial de Linux • 2 min read
Se tienen varios artículos sobre mercurial en este blog, un tutorial de mercurial (viene una actualización), como empaquetar para Debian con mercurial (viene una actualización) y el último como gestionar la configuración con mercurial.
Este artículo explicará como compartir repositorios de Mercurial con mercurial-server, este artículo se basa en el tutorial en inglés.
Mercurial-server no se autentica usando claves pero si llaves públicas con ssh. Todos los usuarios que quieran acceder al repositorio mercurial necesitan una llave pública.
En el siguiente enlace tienen una guía de como crear las llaves públicas.
Acceso inicial al mercurial-server.
Instalar mercurial-server:
aptitude install mercurial-server
Conectarse al servidor grievous habilitando el forwarding.
ernesto@jewel:~$ ssh -A grievous
Agregar llave privada al agente de autenticación.
ernesto@grievous:~$ ssh-add -L > my-key
Crear el directorio para el usuario ernesto en el mercurial-server, copiar la llave y actualizar el repositorio de autenticación.
ernesto@grievous:~$ sudo mkdir -p /etc/mercurial-server/keys/root/ernesto
ernesto@grievous:~$ sudo cp my-key /etc/mercurial-server/keys/root/ernesto/jewel
ernesto@grievous:~$ sudo -u hg /usr/share/mercurial-server/refresh-auth
ernesto@grievous:~$ exit
Crear un repositorio.
cd proyectos/pysms-send
Clonar el proyecto en el servidor grievous:
ernesto@jewel:~/proyectos/pysms-send$ hg clone . ssh://hg@grievous/ernesto/pysms-send
searching for changes
27 changesets found
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 27 changesets with 52 changes to 24 files
Revisar si hay cambios en el repositorio.
ernesto@jewel:~/proyectos/pysms-send$ hg pull ssh://hg@grievous/ernesto/pysms-send
pulling from ssh://hg@grievous/ernesto/pysms-send
searching for changes
no changes found
Siguiente artículo se explicará como agregar usuarios al repositorio, controlar el acceso al repositorio
===
¡Haz tu donativo! Si te gustó el artículo puedes realizar un donativo con Bitcoin (BTC) usando la billetera digital de tu preferencia a la siguiente dirección: 17MtNybhdkA9GV3UNS6BTwPcuhjXoPrSzV
O Escaneando el código QR desde billetera: