TECNato – TIC's Perú

Servidor Git con Gitolite y Netbeans

domingo, 20 de mayo del 2012 3 comentarios

¿Te suena GitHub?, pues si no aun has escuchado dicha palabra, te cuento es una red social para programadores, y que es un servicio web para almacenar codigo fuente mediante Git. ¿Y qué es Git?, Git es un poderoso sistema de control de versiones diseñado por el creador de Linux, Linus Torvals.

En este artículo aprenderemos como crear nuestro propio “GitHub”, orientado a ser utilizado en un servidor dedicado dentro de una red local, mediante Gitolite. Gitolite es el software que nos permitirá administrar los repositorios y usuarios de Git.

Para empezar instalaremos Gitolite en una computadora con Ubuntu GNU/Linux, la cual será el servidor. Escribimos los siguientes comandos:

// generar llaves ssh y copiar

ssh-keygen -t rsa
cp ~/.ssh/id_rsa.pub /tmp/local.pub

// instalar git y gitolite

sudo apt-get install git gitolite git-daemon-run

// configurar

git config –global user.name «Your Name»
git config –global user.email your@email.com

// crear usuario

sudo adduser \
–system \
–shell /bin/bash \
–gecos ‘git version control’ \
–group \
–disabled-password \
–home /home/git \
git

// entrar a git

sudo su git
echo «PATH=$HOME/bin:$PATH» > ~/.bashrc
gl-setup /tmp/local.pub

// guardar el archivo que nos aparece y salir mediante vim (:wq)

// regresar al usuario por defecto

exit

// clonar git-admin

git clone git@ubuntu:gitolite-admin.git

// crear nuevo repositorio editando “gitolite-admin/conf/gitolite.conf” al cual podrá acceder cualquier usuario (@all)

repo     gitolite-admin
RW+  =  @all
repo     miproyecto
RW+  =  @all

// finalmente hacemos “commit”

git add .
git commit -a -m ‘crear nuevo repositorio’
git push origin master

Ya tenemos un servidor Git con Gitolite y Ubuntu.

En el siguiente paso inicializaremos el repositorio mediante Netbeans en una máquina con Windows, para lo cual debemos crear un usuario, para ello utilizaremos puttygen.exe.

Una vez en el programa, generamos una “llave publica” (1), copiamos el texto que aparece y lo guardamos en un archivo con la extension “.pub” (2), este archivo debemos copiarlo en el servidor dentro de “gitolite-admin/keys/” y hacer “commit”. Seguidamente guardamos la llave privada con OpenSSH, en un lugar aparente .

Abrimos Netbeans, nos ubicamos en el proyecto, seleccionamos click-derecho > Versioning > Inicialize Git Repository y seleccionamos la carpeta donde se creara el repositorio.

Ahora hacemos “commit” (click-derecho > Git > Commit) y luego “push” (click-derecho > Git >Remote > Push), para lo cual rellenamos con los datos que aparecen en la figura siguiente:

Seleccionamos siguiente y finalizar; listo el repositorio esta inicializado.

Para agregar otro usuario de otra máquina repetimos los mismos pasos con puttygen y luego clonamos el proyecto (Team > Clonar…), y utilizamos los mismo datos de la figura anterior pero esta vez con la llave privada correspondiente.

Las opciones básicas de Git son “commit”, “pull” y “push”, y que desde Netbeans las ubicamos al hacer click-derecho en el proyecto o en el menu “Team”.

Pull: Recuperar la última versión del proyecto.

Commit: Actualizar versión local.

Push: Enviar nueva versión al servidor.

Como conclusión podemos decir que es muy necesario utilizar un sistema de control de versiones cuando se programa de forma colaborativa, ya que tiene muchas ventajas, por lo que vale la pena aprender Gitolite o en todo caso GitHub.


Escrito por para TECNato

3 comentarios

Deja tu comentario

(Iniciar sesión)

TECNato

TECNato nace de la idea de crear una comunidad tecnológica, un espacio virtual para compartir conocimientos sobre TIC’s (Tecnologías de la Información y Comunicación).

Hazte miembro

TECNato es libre y abierto a nuevos miembros que estén dispuestos a compartir sus conocimientos en TIC’s, así que no dudes en escribirnos para mas detalles.

Soporte

Diseño Web:
Grupo Sistemas
CMS:
WordPress