informatica:git
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
informatica:git [2015/02/03 14:48] – [Comandos sueltos] javi | informatica:git [2019/12/30 19:07] – [Añadir rama branch] jose | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== git ===== | + | ====== git ====== |
- | ==== Iniciar repositorio en remoto ==== | + | ===== Tags ===== |
+ | |||
+ | 1. Listar los commits de un repositorio | ||
+ | |||
+ | < | ||
+ | git log --pretty=oneline | ||
+ | </ | ||
+ | |||
+ | 2. Marcar con una etiqueta (en este ejemplo " | ||
+ | |||
+ | < | ||
+ | git tag -a v1.0 947c168ba5cc2c40dabe15b1a140e0a90f29f3c3 | ||
+ | </ | ||
+ | |||
+ | 3. Subir las etiquetas al repositorio remoto: | ||
+ | |||
+ | < | ||
+ | git push origin v1.0 | ||
+ | </ | ||
+ | |||
+ | ===== Iniciar repositorio en remoto | ||
Given a project in our local file system: | Given a project in our local file system: | ||
Line 19: | Line 39: | ||
4. Move the directory to its final location using SSH | 4. Move the directory to its final location using SSH | ||
scp -rv / | scp -rv / | ||
+ | | ||
+ | ===== Subir un cambio ===== | ||
- | ==== Servidor git acceso claves ssh ==== | + | git add < |
+ | git commit -m " | ||
+ | git push | ||
+ | ===== Añadir rama branch ===== | ||
+ | git pull | ||
+ | git checkout -b test | ||
+ | git push origin test | ||
+ | Listar ramas: | ||
+ | < | ||
+ | git branch -a | ||
+ | master | ||
+ | * test | ||
+ | remotes/ | ||
+ | remotes/ | ||
+ | remotes/ | ||
+ | </ | ||
+ | Cambiar de rama: | ||
+ | < | ||
+ | git checkout master | ||
+ | A Dockerfile_ok | ||
+ | A Dockerfile_test | ||
+ | Switched to branch ' | ||
+ | Your branch is up to date with ' | ||
+ | </ | ||
+ | |||
+ | ===== Servidor git acceso claves ssh ===== | ||
http:// | http:// | ||
+ | |||
+ | 0. (Opcional) Instalo paquetes | ||
+ | |||
+ | sudo aptitude install git | ||
+ | |||
+ | 1. Crear usuario git con el minimo de permisos posible | ||
+ | |||
+ | sudo vim /etc/shells | ||
+ | |||
+ | Y anyadir, si no existe, la siguiente linea: | ||
+ | |||
+ | / | ||
+ | |||
+ | Seguimos con la creacion del usuario " | ||
< | < | ||
sudo adduser git | sudo adduser git | ||
- | su git | + | sudo chsh git |
- | cd | + | |
- | mkdir .ssh && chmod 700 .ssh | + | |
- | touch .ssh/ | + | |
- | cat / | + | |
</ | </ | ||
+ | Teclear: | ||
+ | / | ||
+ | Y pulsar " | ||
+ | < | ||
+ | sudo su git | ||
+ | cd | ||
+ | mkdir .ssh && chmod 700 .ssh | ||
+ | touch .ssh/ | ||
+ | </ | ||
+ | 2. Genero claves en el cliente y las subo al servidor | ||
+ | < | ||
+ | ssh-keygen -t rsa | ||
+ | scp / | ||
+ | </ | ||
- | ==== Comandos sueltos ==== | + | 3. Volcar las claves: |
+ | < | ||
+ | sudo su git | ||
+ | cat / | ||
+ | </ | ||
+ | |||
+ | ===== Comandos sueltos ===== | ||
http:// | http:// | ||
Line 59: | Line 136: | ||
< | < | ||
git push --tags origin | git push --tags origin | ||
+ | </ | ||
+ | * Descargar un tag determinado: | ||
+ | < | ||
+ | git clone -b ' | ||
</ | </ | ||
- | ==== Hooks ==== | + | ===== Hooks ===== |
- | * Desplegar el contenido de un repositorio tras recibir un commit | + | ==== Desplegar el contenido de un repositorio tras recibir un commit |
1. Crear el hook ' | 1. Crear el hook ' | ||
Line 78: | Line 159: | ||
chmod +x / | chmod +x / | ||
| | ||
- | 2. Fer un commit | + | 2. Hacer un commit |
+ | |||
+ | Resultado: el directorio "/ | ||
+ | |||
+ | ==== Enviar un correo tras recibir un commit ==== | ||
+ | |||
+ | 1. Crear el hook ' | ||
+ | |||
+ | sudo vim / | ||
+ | |||
+ | Con el siguiente contenido: | ||
+ | |||
+ | < | ||
+ | # | ||
+ | |||
+ | # Please adjust this setting | ||
+ | RECIPIENTS=" | ||
+ | GIT="/ | ||
+ | SENDMAIL="/ | ||
+ | export USER_EMAIL=$($GIT log -1 --format=format: | ||
+ | REPOSITORY=${PWD## | ||
+ | MAIL_CONTENT=`$GIT log --name-status HEAD^..HEAD` | ||
+ | SUBJECT=$USER_EMAIL" | ||
+ | |||
+ | $SENDMAIL " | ||
+ | subject: | ||
+ | from: | ||
+ | $MAIL_CONTENT | ||
+ | EOF | ||
+ | </ | ||
+ | |||
+ | chmod +x / | ||
+ | |||
+ | 2. Hacer un commit | ||
+ | |||
+ | Resultado: el directorio "/ | ||
+ | |||
+ | ==== GITHUB ==== | ||
+ | Vamos a Settings "SSH and GPG keys" y añadimos la clave. | ||
+ | |||
+ | Creamos el repositorio en GITHUB. Mejor no inicializar con README.md Allí pone las instrucciones: | ||
+ | < | ||
+ | git init . | ||
+ | git add . | ||
+ | git commit -m " | ||
+ | git remote add origin git@github.com: | ||
+ | git push -u origin master | ||
+ | </ | ||
+ | |||
- | Resultat: el directori "/ |
informatica/git.txt · Last modified: 2022/01/06 20:19 by jose