Git, comandos básicos

Iniciar control de versiones en proyecto existente

git init
git add .
git commit -m 'Iniciamos control de versiones'

Comandos básicos

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

Configuración

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

También podemos modificar directamente el fichero .gitconfig

Descartar directorios o archivos en git

Editar .git/info/exclude, ejemplo:

# 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

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 *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

LesOlivex