# GIT CHEATSHEET
## De una máquina a otra en la misma red
( siendo xxxx ip de la máquina y YYYYYY carpeta del repo )
**CLONE**
git clone -u /usr/local/git/bin/git-upload-pack ssh://XXXXXXX/users/javier/Sites/YYYYYYYYY
**PULL**
git pull --upload-pack /usr/local/git/bin/git-upload-pack ssh://XXXXXXX/users/javier/Sites/YYYYYYYYY
## LOCAL REPOS
####Ver las revisiones de un determinado archivos ( siendo 1 el último commit previo al actual )
**SHOW**
git show HEAD~1:css/screen.css
####Crear una rama y directamente hacer checkout en ella
```git checkout -b myfeature develop```
####Merge especial
```git merge --no-ff myfeature```
####Eliminar una rama
```git branch -d myfeature```
####Crear tag
```git tag -a 1.2.1```
####Commit con add de todos los archivos
```git commit -a -m 'Mensaje'```
####Crear zip del último commit
```git archive --format=zip HEAD `git diff HEAD^ HEAD --name-only` > update.zip```
####Crear zip desde un commit en concreto hasta el head
```git archive --format=zip HEAD `git diff commit_id HEAD --name-only` > update.zip```
####Crear zip desde un commit en concreto hasta otro
```git archive --format=zip HEAD `git diff commit_id-origen commit_id-final --name-only` > update.zip```
####Renombrar una branch
```git branch -m old_branch new_branch```
####Iniciar server git
```git daemon --base-path=d:/wamp/www --export-all --port=9999```
####Cuando nos da error que no encuentra un archivo al intentar montar un deploy cambiamos el git diff filter para que nos devuelva todos los archivos menos los eliminados
```git diff HEAD^ HEAD --name-only --diff-filter=ACMRTUXB```
####Cuando queremos quitar un archivo que ya esta añadido, es decir lo contrario de git add
```git reset nombre_el_archivo```