Tag mercurial - Userlinux.net

Posts sobre el tag mercurial

Gedit con esteroides 2

21.Sep.2011 ~ 4 Comentarios ~ 1014 Lecturas

No me quiero hacer pesado con este tema, pero hoy a uno de mis compañeros le ha petado el Eclipse y hemos tenido que configurar gedit para que molara, literalmente. No es que haya sido muy tedioso pero no recordaba ciertos pasos que me apetece documentar. Allá vamos.

Warning: bitbucket.org certificate with fingerprint

03.Aug.2011 ~ 5 Comentarios ~ 850 Lecturas

Si trabajas con Mercurial y has actualizado a la rama 1.7.x es posible que, en tus comunicaciones https con Bitbucket aparezca un mensaje como el siguiente:

$ hg pull -u
warning: bitbucket.org certificate with fingerprint fi:ng:er:pr:in:tt not verified (check hostfingerprints or web.cacerts config setting)
warning: bitbucket.org certificate with fingerprint fi:ng:er:pr:in:tt not verified (check hostfingerprints or web.cacerts config setting)
pulling from https://r0sk:***@bitbucket.org/r0sk/proyecto
warning: bitbucket.org certificate with fingerprint fi:ng:er:pr:in:tt not verified (check hostfingerprints or web.cacerts config setting)
warning: bitbucket.org certificate with fingerprint fi:ng:er:pr:in:tt not verified (check hostfingerprints or web.cacerts config setting)
searching for changes
adding changesets
adding manifests
adding file changes
$

Este warning no implica el mal funcionamiento o la inseguridad puntual de dicha acción, simplemente informa de que siempre ha sido inseguro. Tenemos dos opciones, o dejar de usar https o indicar en configuración los certificados SSL a utilizar para que no vuelva a aparecer el warning. Esto último se consigue editando el fichero .hg/hgrc del proyecto en cuestión, agregando lo siguiente (en Debian/Ubuntu):

[web]
cacerts = /etc/ssl/certs/ca-certificates.crt

Una vez agregadas estas dos lineas en el fichero probamos de nuevo a ejecutar cualquier operación sobre https y vemos que ya no se muestran los avisos. (Fuente).

Categorías:

Limitando usuarios ssh en Mercurial

21.Jul.2010 ~ 14 Comentarios ~ 1404 Lecturas

Si algo bueno tiene Mercurial es que permite la autentificación de usuarios a través de SSH. Es muy sencillo agregar un nuevo usuario a un desarrollo/repositorio: adduser y con meterlo dentro del grupo correspondiente al desarrollo llegaría. Pero ¿qué ocurre si no queremos que ese usuario haga otra cosa que no sean comandos hg?.

Conociendo la existencia de hg-ssh no ocurre demasiado, se trata de un script que hemos de referenciar en el authorized_keys del usuario que acabamos de crear de forma que todos los comandos entrantes pasen por este script. El script se encarga de parsear el comando que se pide en ejecución: si es de la familia de Mercurial lo ejecuta, en cualquier otro caso mostrará un error.

Ejemplo de authorized_keys:

command="~/hg-ssh /home/repo1 /home/repo2",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss AAAA...

He optado por copiar el archivo hg-ssh en el directorio home del usuario, pero se podría referenciar directamente el que trae de ejemplo la instalación de Mercurial.

Categorías:
Tags:

Mercurial sobre Apache

07.May.2010 ~ 2 Comentarios ~ 1656 Lecturas

Mi predilección por Mercurial ha quedado patente en algún que otro post, así que una vez estamos conforme con nuestro servidor de versiones llega el momento de dar un paso más. Intentaremos configurar un interfaz web para mostrar el código a todo el mundo (una especie de Trac solo para código y adaptado a Mercurial).

El proceso es tan sencillo como crear otro VirtualHost en tu Apache con unas características un poco especiales porque en vez de tirar de archivos dinámicos (.php, .asp…) vamos a tirar de un cgi en Python, así que la configuración sería algo así:

Categorías:

Mercurial: automatizando al máximo

18.Mar.2010 ~ 2 Comentarios ~ 2018 Lecturas
Cuando trabajamos con servidores de versiones seguro que hay muchas razones de peso de por medio, una de ellas -la que veremos- puede ser la replicación de código en diversas máquinas.

Supongamos un montón de máquinas que comparten el mismo código de repositorio, el orden de propagación de un cambio en todas esas máquinas es sencillo:

  1. Programamos dicho cambio en nuestro servidor de desarrollo (devel).
  2. Hacemos un commit local (en sistemas de versionado distribuido -como Mercurial- cada repositorio también es servidor).
  3. Lo siguiente es un push al servidor donde almacenamos el código (repo código).
  4. Ahora tocaría entrar en cada una de esas máquinas en las que queremos propagar el código y ejecutar un hg pull ; hg update.

Mercurial en Fedora Core 4 y CentOS 5

08.Mar.2010 ~ 2 Comentarios ~ 1787 Lecturas
Necesitaba instalar Mercurial en varias máquinas totalmente desactualizadas, concretamente una Fedora Core release 4 (Stentz) y una CentOS release 5 (final), pensé que iba a ser un lío de dependencias pero al final ha resultado inexplicablemente más sencillo de lo esperado:
Categorías:
Tags:

Mercurial: Hook on push

21.Feb.2010 ~ 0 Comentarios ~ 1250 Lecturas
Lo tenía pendiente desde que cambié de Subversion a Mercurial, sabía que se podía y que era algo trivial pero lo vas dejando y bueno, just happens. El caso es que cuando haces un push al servidor lo normal es hacer un update de su lado, así que el hook que lo automatiza es el correspondiente:
[server]$ cat /path/del/repo/.hg/hgrc
[hooks]
changegroup = hg update
Y fuera preocupaciones. La obligada referencia a Tao of Mac, desde donde me vino la inspiración mientras intentaba poner el Macbook a punto.

Migración de SVN

07.Jan.2010 ~ 0 Comentarios ~ 1246 Lecturas
Después del owned con el que hemos puesto fin al 2009 ha llegado un nuevo servidor de desarrollo y con ello su consecuente migración (y problemas varios).

Ha llegado despiezado así que nos hemos puesto manos a la obra para restaurar el servicio cuanto antes, primero el hardware y luego -wiki en mano- los servicios correspondientes. El primer problema -que en principio no ha trascendido demasiado- ha sido la migración de los repositorios Subversion a la nueva máquina. Digo problema porque nunca había migrado un SVN, pero todavía sigue quedando gente que documenta estas operaciones para hacer la vida más sencilla a los demás.

Primeros pasos con Mercurial

28.Oct.2009 ~ 8 Comentarios ~ 2627 Lecturas
Debería haber escrito este post hace algún tiempo pero ya se sabe como somos la gente importante que no tenemos tiempo a nada (modo ironic off). De todas formas nunca es tarde así que allá vamos, a adentrarnos en el maravilloso y fascinante mundo de Mercurial (hg para los amigos).

A estas alturas todos sabréis que Mercurial es una herramienta de sistema de control de versiones multiplataforma para desarrolladores de software implementado en Python (wikipedia dixit). Lo que igual se hace menos familiar es la facilidad con la que podemos crear un repositorio en 3 simples pasos:

Eclipse con Mercurial

08.Oct.2009 ~ 2 Comentarios ~ 2450 Lecturas
Pensé que no funcionaba, que el plugin que había estaba desactualizado o algo así pero no es cierto, funciona a las mil maravillas. Con ésto no quiero decir que sea mejor o la tenga más grande que Netbeans, que no quiero flames, pero -al menos para mi- ya están en igualdad de condiciones para ser comparados.

Para instalarlo, como siempre, Help - Install New Software e introducimos los siguientes datos:
Name: Vectrace (Mercurial Eclipse plugin)
URL: http://www.vectrace.com/eclipse-update/
El único truco ha sido seleccionar la versión "de abajo" en la instalación y listo, a la hora de importar un nuevo proyecto ya puedo hacer clone del repo y a otra cosa mariposa.
Instalando Mercurial en Eclipse
Ya sé que en la imagen no se aprecia apenas pero no me fustiguéis por ello. Por cierto una muy buena página de referencia es ésta, por si le sirve de ayuda a alguien.
Categorías:

Buscar

Cargando...

Últimos comentarios

  • Juan
  • Marina
  • Francisco
  • fon
  • minWi
  • isra
  • reidrac
  • r0sk
  • Rodrigo Rega
  • minWi
  • r0sk
  • reidrac
  • r0sk
  • deady
  • errece

Moneting

Valor de mi cuenta de Facebook según Moneting
Valor de mi cuenta de Twitter según Moneting

Tagcloud

mercurial twitt rsidenotes openbsd twitter humor frases nintendo films cumpleaños 2008 macosx vacaciones alemania_2006 sysadmin debian ps3 conciertos django barça bsd freebsd userlinux iphone ds lugo cake cakephp programación games bake personal bash meme rfilms mundial linux lucux league web hack blogs canción sidenotes blogsfera felicidades champions 2007 blog futbol juegos ubuntu mac deportes php apple mysql opinion seguridad ssh

Archivo

Social

Enlaces de interés