Dic
16
2011

Trabajando con GIT II

En esta entrada veremos opciones más avanzadas, no tan utilizadas en el uso diario y que nos facilitarán el uso profesional del sistema.

Ignorar ficheros o directorios.

Se utiliza el fichero .gitignore, este se puede configurar mediante la orden git config –global core.excludesfile ~/.gitignore

  • Líneas en blanco, o las que comiencen por # serán ignoradas.
  • Funciona con expresiones como * para expresar extensiones de ficheros por ejemplo.
  • Se puede terminar una expresión con una / para especificar un directorio.
  • Se puede negar una regla comenzando con el signo de exclamación (!).
En el siguiente ejemplo podemos ver el contenido de este fichero.

Ejemplos:

# esto es un comentario y será ignorado

*.a           #No versionar ficheros .a

!lib.a      #Versionar lib.a, aún ignorando los ficheros .a anteriormente descritos.

build/    #Ignorar todos los ficheros dentro del directorio especificado.

Trabajando ante errores.

Aquí veremos como arreglar los fallos que cometamos al trabajar con nuestro sistema de versiones.

  • Para eliminar un fichero de un commit al cual hemos agregado git reset HEAD — nombredefichero
  • Para dejar un fichero en su versión original git checkout — nombredefichero, esta orden es muy peligrosa y se debe de hacer creando una  copia de seguridad del fichero.
  • Para deshacer el último commit git revert HEAD.
  • Si se trata de un commit específico git revert $id (donde id es el identificador de commit se extrae de git log).

Que son las ramas en GIT.

Por definición una rama en git es un commit que se separa del sistema por defecto que es el master, al crear una nueva rama lo que hacemos es un nuevo puntero en el que movernos y escribir.

  • Para crear una rama lo haremos con git branch nombredelarama.
  • Para movernos entre ramas git checkout nombredelarama.
  • Para juntar dos ramas, por ejemplo testing en la master. Primero nos situamos dentro de la rama master (checkout master) y luego le decimos que una ambas con (merge testing), existe otro comando que es rebase pero tiene más peligro utilizarlo si se nos mezclan commits de otros desarrolladores, si lo utilizamos de manera local para nosotros tiene más ventajas.
  • Si la rama testing no la necesitamos utilizar más se podría borrar con git branch -d testing.

Necesitas ayuda

Existen numerosos comandos que son resultado de opciones dentro de los vistos anteriormente y otros nuevos que serán objeto de una entrada posterior.

Entradas relacionadas

Sobre el autor: Juan Carlos Giménez Moncada

Luchando con el Open Source desde 1996…

Comentarios cerrados.

Nube de etiquetas

PHP Freelancer