Git, comandos básicos

Table of Contents

Iniciar control de versiones en proyecto existente

[bash]
git init
git add .
git commit -m 'Iniciamos control de versiones'
[/bash]

Comandos básicos

[bash]
git add <archivo> # Añadir archivo
git mv <archivo> <destino> # Mover archivo
git rm <archivo> # Borrar archivo
git status # Ver estado de proyecto
git show # Información sobre el último commit
git commit -m 'Descripción del cambio' # Guardar el estado actual
git push # Sube al servidor los cambios realizados
git pull # Actualizar local con servidor
[/bash]

Configuración

[bash]
git config --global user.name "Eduardo Magrané"
git config --global user.mail "email@dominio.com"
[/bash]

También podemos modificar directamente el fichero .gitconfig

Descartar directorios o archivos en git

Editar .git/info/exclude, ejemplo:
[bash]
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
docs
logs
tmp
[/bash]

Trabajando con ramas

Crear una rama

git branch rama_nueva

Borrar rama

git branch -d  rama

Entramos en ella

git checkout rama_nueva

Hacemos modificaciones que añadimos a git y commits sobre la rama

git add . 
git commit -a

Fusionamos la rama con el master

git checkout master 
git merge rama_nueva

Si nos encontramos en la situación de haber realizado cambios antes de ir a la rama deseada, mientras no hayamos realizado commit podemos movernos a la rama y llevarnos los cambios.

git checkout -b rama_de_trabajo

Hacemos commit en la rama con los cambios y al volver a la master estará como antes.

Tags con git

Tags anotados

Estos generan una copia exacta del estado del repositorio.:

git tag -a v1.0 -m 'Release v1.0'

Este objeto se creara en .git/objects y creará una referencia en .git/refs/tags/v1.0 que tendrá el SHA-1 del tag.

Tags ligeros

No generan un objeto tag como los anteriores, solo crea una referencia en .git/refs/tags/v2.0 que tendrá el SHA-1 del HEAD:

git tag v2.0

Moviendose entre Tags

Git nos permite movernos entre los tags como si fueran ramas pero sin la posibilidad de modificarlos.:

git checkout v2.0

Listar Tags:

git tags -l

git checkout v2.0

Compartir Tags (GitHub por ejemplo):

# todas las etiquetas
git push --tags

#una etiequeta en particular
git push origin v2.0

Visualizar el contenido de un Tag:

git show v1.0

Trabajando en grupo

Un ejemplo de metodología para trabajar en grupo es git-flow, estudiarla te permite entender mejor a git.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

LesOlivex