From 9f6eadd559f1ddf201513edab955ca8a408f7906 Mon Sep 17 00:00:00 2001 From: "jp.av.dev" Date: Fri, 2 Jul 2021 21:16:58 -0400 Subject: [PATCH] Update 'Comandos Basicos Git' --- Comandos-Basicos-Git.md | 42 +++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/Comandos-Basicos-Git.md b/Comandos-Basicos-Git.md index 820abd0..1adac17 100644 --- a/Comandos-Basicos-Git.md +++ b/Comandos-Basicos-Git.md @@ -26,18 +26,18 @@ ----- ## Instalar y configurar user: -``` +```bash # Repositorio, ej. add-apt-repository ppa:git-core/ppa ``` -``` +```bash git --version git config --global user.name "Nombre" git config --global user.mail "Mail Git" ``` -``` +```bash # Lista de configuracion global git config --global --list @@ -46,7 +46,7 @@ git help (comando) ``` # Secuencia tipica de uso: ## Crear repositorio en directorio actual -``` +```bash git init git add [archivo odirectorio] git add -A (Agregar todo a confirmacion) @@ -83,7 +83,8 @@ git commit -m "--amend para sobreescribir el ultimo commit" --amend `git reset --hard [SHA commit]` -#### MIXED: Staging Area = Repository. Working Dir a la espera de la iteracion basica (add, commit) +#### MIXED: +##### Staging Area = Repository. Working Dir a la espera de la iteracion basica (add, commit) Sire para encapsular por ejemplo: restear 5 commits para integrarlos en un solo commit" Si vuelvo a hacer un reset --mixed a un commit de los que fueron encapsulados, se ignora/ elimina el commit que encapsulaba estos. @@ -97,7 +98,8 @@ git commit -m "--amend para sobreescribir el ultimo commit" --amend ### CHECKOUT ##### "Ir a una version, deatached mode, permite generar una nueva rama(branch) a partir de este" -```git chekout [SHA commit] +```bash + git chekout [SHA commit] Te encuentras en estado 'detached HEAD'. Puedes revisar por aquí, hacer cambios experimentales y hacer commits, y puedes descartar cualquier @@ -120,14 +122,14 @@ git commit -m "--amend para sobreescribir el ultimo commit" --amend Ver ramas: `git branches --list` #### Crear rama -``` +```bash git branch "nombre_rama" # checkout -b crea la rama y posiciona en ese punto git checkout -b "nombre_de_raiz_para_nueva_rama" ``` #### Borrar rama -``` +```bash git branch -d "rama" -D (para forzar) ``` @@ -153,7 +155,7 @@ git branch -d "rama" ##### (desde la rama a realizar rebase) ##### añade los comits de la rama experimental delante de la rama master ##### posterior al REBASE (master) sigue en su último anterior commit -``` +```bash git rebase master git checkout master git merge "rama experimental" @@ -174,7 +176,7 @@ git merge "rama experimental" `git log -2 # ver los últimos 2 commits` #### filtros: -``` +```bash git log --after="today" --after="2020-12-07" --after="2020-12-07" --before="today" @@ -185,7 +187,7 @@ git log --after="today" `log -S"búsqueda"` ### Alias Log -``` +```bash git config --global alias.lg "log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all" git config --global alias.lg2 "log --graph --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all" @@ -193,7 +195,7 @@ git config --global alias.lg2 "log --graph --decorate --format=format:'%C(bold b ### Git stash ##### guarda cambios en un estado termporal, no aplica cambios inmediatamente -``` +```bash git stash git stash list git stash apply @@ -216,7 +218,7 @@ git stash apply `ssh-add -l` ##### Crear una llave ##### SSH -t (algoritmo=rsa) -b (bits key) -C "comentario/mail" -``` +```bash ssh-keygen -a 100 -t ed25519 -f ~/.ssh/id_ed25519 -C "john@example.com" ssh-keygen -t rsa -b 4096 -C "mail@git" @@ -232,7 +234,7 @@ cat .ssh/[key_rsa.pub] ### Manejo de Identidades git - Configuracion por archivo **~/.ssh/config** - ``` + ```bash Host gitfuzan Hostname jpdev.kickto.net User fuzan @@ -241,11 +243,11 @@ cat .ssh/[key_rsa.pub] Port 22 ``` ej. al agregar repositorio remoto, usar host en comando: - ``` + ```bash git remote add origin ssh://git@gitfuzan/jp.av.dev/basicos_git.git ``` - Configuración por directorio (repositorio) - ``` + ```bash git config --local user.name "fuzan" git config --local user.email "fuzan@email.net" git config --local core.sshCommand "ssh -i ~/.ssh/keys/id_rsa -F /dev/null" @@ -255,7 +257,7 @@ cat .ssh/[key_rsa.pub] ## Médotodos remotos tipícos ### Clonar repositorio (o https): -``` +```sh # Opcion para escificar llave #..."From Git version 2.10.0, you can configure this per repo or globally, # so you don't have to set the environment variable."... @@ -266,13 +268,13 @@ git clone ssh://sshUsr@domino/usrRepo/Repo.git ``` ### Ver y eliminar vinculo con repositorio remoto -``` +```bash git remote -v git remote rm origin ``` ### Crear nuevo repositorio remoto -``` +```sh touch README.md git init @@ -294,7 +296,7 @@ git push -u origin master ## Git ignore "Crear archivo .gitignore añadir archivo/carpeta/extension para ignorarlos no guardar archivos sensibles, regex, ej. .*" -``` +```sh ignorar_directorio/ dir2 archivo_a_ignorar.txt