Rss

  • flickr
  • linkedin
  • google

Chuleta de comandos git (cheat sheet)

0 Shares Twitter 0 Facebook 0 Google+ 0 LinkedIn 0 Pin It Share 0 0 Shares ×

 

Esta es una chuleta de comandos útiles para usar con el sistema de control de versiones git.

 

Configurar git

git config --global user.name "David" Establece el nombre de usuario

git config --global user.email "usuario@email.com" Establece el correo del usuario

git config --global core.editor "editor" Configura el editor de texto sustituyendo “editor” por el editor correspondiente, por ejemplo:

sublw: SublimeText

gvim -f: gVim en linux

emacs

git config --global merge.tool meld Configura la herramienta de diferencias en este caso Meld

git config --list Muestra un listado con las configuraciones

 

Crear repositorio

cd ~/git/.... Nos situamos en directorio que deseemos

git init Inicializamos el directorio

 

Añadir archivos a un repositorio

git add .  Añade todos los archivos del directorio

git add *.c  Añade todos los archivos con extensión .c

git add README Añade el archivo README

 

Excluir archivos o directorios explicitamente

touch .gitignore Creamos el fichero .gitignore  en el cual vamos a definir los archivos o directorios que excluiremos

Ejemplo para ignorar JPG’s y PNG’s

/*.jpg
/*.jpeg
/*.png

Ejemplo para ignorar carpetas vacías

/empty

Ejemplo para ignorar un archivo individual

/archivo.dumm

Eliminar archivos

git rm README Elimina el archivo README del disco y del repositorio (una vez commiteado).

git rm --cached README Elimina el archivo README del repositorio pero no del disco duro.

 

Renombrar archivos

git mv original novo Cambiamos el nombre del archivo “original” a “nuevo”.

 

Validar los cambios – commit

git commit -m “Mensaje” Añade los archivos y realiza el commit.

git commit -a -m “Mensaje” Añade los archivos y realiza el commit, pero en caso de haber creado o eliminado archivos, se debe de usar el comando add previamente al commit.

git commit --amend Para modificar el último commit y volver a hacerlo. Ejemplo:

git commit -m “mensaje” Añadimos los archivos y realizamos el commit.

git add archivo_del_que_nos_olvidamos_antes Añadimos el archivo archivo_del_que_nos_olvidamos_antes del que nos habíamos olvidado.

git commit –amend Modifica el último commit para incluir el archivo archivo_del_que_nos_olvidamos_antes.

git reset HEAD file Nos permite hacer unstaging sobre file, para que no sea enviado en el próximo commit. Lógicamente ya había sido añadido anteriormente con git add file.

 

Monitorizar proyecto:

git status Muestra el estado del proyecto.

git log Lista todos los commits (con la fecha y hora, el autor y la suma de verificación) realizados en orden cronológico inverso, es decir los más recientes primero.

git log -p -2 La opción -p nos mostrará además las diferencias, y la opción -2 limitará la salida a los dos últimos commits.

git log --stat Muestra estadísticas abreviadas de los commits.

git log --pretty:oneline Muestra estadísticas en una línea

git log --pretty=format:”%h - %an, %ar : %s ” Muestra estadísticas formateadas a nuestro gusto:

%H  Commit hash
%h  Abbreviated commit hash
%T  Tree hash
%t  Abbreviated tree hash
%P  Parent hashes
%p  Abbreviated parent hashes
%an Author name
%ae Author e-mail
%ad Author date (format respects the –date= option)
%ar Author date, relative
%cn Committer name
%ce Committer email
%cd Committer date
%cr Committer date, relative
%s  Subject

gitk Muestra herramienta gráfica con las estadísticas de los commits.

 

Restaurar el estado del último commit:

git checkout -f Forzamos la recuperación total del repositorio al último commit.

git checkout -- file Recuperamos la última versión de file de la que hemos realizado un commit.

 

Crear repositorio remoto usando ssh

ssh usuario@servidor Accedemos por ssh al servidor

cd ~/git/carpeta Nos situamos en la carpeta en la que deseamos ubicar el repositorio

git --bare init Iniciamos el repositorio.

 

Asociar repositorio local a uno remoto

cd ~/git/carpeta Nos situamos en la carpeta correspondiente.

git init Iniciamos el repositorio

git remote add origin david@hptc.davidpuente.es:git/carpeta Asociamos el repositorio local al remoto. origin es el nombre dado al repositorio.

git add . Añadimos todos los ficheros y directorios.

git commit -m “Mensaje” Realizamos el commit en local.

git push origin master Realizamos los cambios en el servidor remoto.

 

Clonar repositorio remoto por ssh

git clone servidor.com:git/proba Clonará el repositorio remoto.

git clone servidor.com:git/proba proba2 Repositorio clonado en carpeta proba2

Diferencias

git diff Muestra las diferencias de los archivos modificados que aún no se han estacionado.

git diff --cached o git diff --staged (versiones posteriores a la 1.6.1) Muestra las diferencias de los archivos modificados y estacionados, a la espera de ser commiteados.

 

Esto es todo de momento, si creéis que falta algo de uso habitual, lo podéis añadir a los comentarios y estaré encantado de añadirlo.

 

Deja un comentario

0 Shares Twitter 0 Facebook 0 Google+ 0 LinkedIn 0 Pin It Share 0 0 Shares ×