Introducci贸n a Git

1

驴Por qu茅 usar un sistema de control de versiones como Git?

2

驴Qu茅 es Git?

3

Instalando GitBash en Windows

4

Instalando Git en OSX

5

Instalando Git en Linux

6

Editores de c贸digo, archivos binarios y de texto plano

7

Introducci贸n a la terminal y l铆nea de comandos

Comandos b谩sicos en Git

8

Crea un repositorio de Git y haz tu primer commit

9

Analizar cambios en los archivos de tu proyecto con Git

10

驴Qu茅 es el staging?

11

驴Qu茅 es branch (rama) y c贸mo funciona un Merge en Git?

12

Volver en el tiempo en nuestro repositorio utilizando reset y checkout

13

Git reset vs. Git rm

Flujo de trabajo b谩sico en Git

14

Flujo de trabajo b谩sico con un repositorio remoto

15

Introducci贸n a las ramas o branches de Git

16

Fusi贸n de ramas con Git merge

17

Resoluci贸n de conflictos al hacer un merge

Trabajando con repositorios remotos en GitHub

18

C贸mo funcionan las llaves p煤blicas y privadas

19

Configura tus llaves SSH en local

20

Uso de GitHub

21

Cambios en GitHub: de master a main

22

Tu primer push

23

Git tag y versiones en Github

24

Manejo de ramas en GitHub

25

Configurar m煤ltiples colaboradores en un repositorio de GitHub

Flujos de trabajo profesionales

26

Flujo de trabajo profesional: Haciendo merge de ramas de desarrollo a master

27

Flujo de trabajo profesional con Pull requests

28

Utilizando Pull Requests en GitHub

29

Creando un Fork, contribuyendo a un repositorio

30

Haciendo deployment a un servidor

31

Hazme un pull request

32

Ignorar archivos en el repositorio con .gitignore

33

Readme.md es una excelente pr谩ctica

34

Tu sitio web p煤blico con GitHub Pages

Multiples entornos de trabajo en Git

35

Git Rebase: reorganizando el trabajo realizado

36

C贸mo usar Git Stash: guarda cambios temporalmente

37

Git Clean: limpiar tu proyecto de archivos no deseados

38

Git cherry-pick: traer commits antiguos al head del branch

Comandos de Git para casos de emergencia

39

Git Reset y Reflog: 煤sese en caso de emergencia

40

Reconstruir commits en Git con amend

41

Buscar en archivos y commits de Git con Grep y log

Bonus sobre Git y Github

42

Comandos y recursos colaborativos en Git y GitHub

43

Tu futuro con Git y GitHub

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Manejo de ramas en GitHub

24/43
Recursos

Si no te funciona el comando gitk es posible no lo tengas instalado por defecto.
Para instalar gitk debemos ejecutar los siguientes comandos:
sudo apt-get update
sudo apt-get install gitk

Repasa: 驴Qu茅 es Git?

Las ramas nos permiten hacer cambios a nuestros archivos sin modificar la versi贸n principal (master). Puedes trabajar con ramas que nunca env铆as a GitHub, as铆 como pueden haber ramas importantes en GitHub que nunca usas en el repositorio local. Lo crucial es que aprendas a manejarlas para trabajar profesionalmente.

Si, estando en otra rama, modificamos los archivos y hacemos commit, tanto el historial(git log) como los archivos ser谩n afectados. La ventaja que tiene usar ramas es que las modificaciones solo afectar谩n a esa rama en particular. Si luego de 鈥済uardar鈥 los archivos(usando commit) nos movemos a otra rama (git checkout otraRama) veremos como las modificaciones de la rama pasada no aparecen en la otraRama.

Comandos para manejo de ramas en GitHub

  • Crear una rama:
    git branch branchName
  • Movernos a otra rama:
    git checkout branchName
  • Crear una rama en el repositorio local:
    git branch nombre-de-la-rama o git checkout -b nombre-de-la-rama.
  • Publicar una rama local al repositorio remoto:
    git push origin nombre-de-la-rama.

Recuerda que podemos ver gr谩ficamente nuestro entorno y flujo de trabajo local con Git utilizando el comando gitk. Gitk fue el primer visor gr谩fico que se desarroll贸 para ver de manera gr谩fica el historial de un repositorio de Git.

Repasa: Qu茅 es branch.

Aporte creado por: Brayan Mamani

Aportes 558

Preguntas 122

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

5:40 Freddy hizo un push sin un pull previo.
Hay tabla

A mi me gusta usar GitKraken como interfaz gr谩fica. Es f谩cil de usar y muy interactiva. Pero a la hora del manejo de mis ramas y trabajo con repositorios remotos sigo usando la consola. Me parece mas r谩pido el uso de la consola y me siento m谩s c贸modo con ella, GitKraken lo uso para hacer mis commits y para revisar las diferencias de mi c贸digo de forma m谩s amigable. Pero no deja de ser una herramienta muy poderosa para facilitar el trabajo a los desarrolladores. Deber铆an probarla.

Apuntes! 馃槂

Me d铆 cuenta que con una sola l铆nea podemos enviar las 2 ramas a GitHub:

git push origin header footer

Ojo, en el examen te sale una pregunta si gitk viene por defecto y la respuesta aparentemente es si, pero en realidad es no, viene si instalas el paquete de windows pero yo que uso centos7 solo tengo git y ya, y falle la pregunta porque estaba mal formulada.

Otro comando para crear una rama y moverse automaticamente a ella es con

git checkout-b <nombre de la rama>

instalar gitk en ubuntu
sudo apt-get install gitk
y si te sale error
sudo dpkg --configure -a
y luego
sudo apt-get install gitk

Creo que a nuestro querido y excelentisimo @freddy se le escapo decir que si uno tienen varios branch uno lo puede subir al mismo tiempo solo escribiendelo uno al lado del otro

ejemplo: git push origin header footer 鈥 鈥 鈥

馃槂

Si quieres enviar las ramas sin tener que dar push en cada una de ellas puedes desde el master poner el comando:

git push origin --all

El cual env铆a tanto ramas como tags

Muchas veces nos confundimos sobre los branchs que se encuentran en local y en remoto.

Si yo ejecuto el comando

git branch

Nos mostrar谩 las ramas que se encuentran en nuestro repositorio local. El * nos indica en que rama nos encontramos actualmente.

$ git branch 
  cabecera
  footer
  header
  master
* stylesux

Para poder visualizar las ramas que se encuentran en el repositorio remoto, podemos utilizar el siguiente comando.

git branch -r

Esto nos mostrar谩 las ramas que se encuentran en el repositorio remoto y podemos identificar si es que nos hace falta hacer push de alguna otra rama o simplemente dejar asi como se encuentra.

$ git branch -r
  origin/cabecera
  origin/footer
  origin/header
  origin/master

Compa帽eros les quiero dar una recomendacion:

Si se sienten mal, que no estan concentrados, cansados, con sue帽o, que no logran captar las clases y se meten urgencia porque deben ver cierta cantidad de clases o tiempo al dia鈥 No se estresen.

Vale mucho la pena parar por algunos minutos, no importan que no puedan ver las 5 clases que tenian pensado ver, pero es super necesario parar, cerrar los ojos, moverse, tomar agua, algo deben hacer para salir de ese estado en el que no van a entender nada de lo que est谩n estudiando.

Mejor tomar unos minutos para entrar en un mejor estado y aprovechar de verdad las clases.

Necesitamos recordar que platzi no es como la escuela, all谩 muchas veces no importaba si no prestabamos full atencion a la clase, con pasar el examen habiamos logrado nuestro resultado.

En cambio, aqui lo importante es dominar las habilidades de cada curso de nuestra ruta.

Solo una reflexi贸n, bye

Les comparto mi resumen 鈥渞esumido鈥: Si tienen alguna duda con los comandos en la parte superior de la foto te dice a donde debes dirigirte. Let鈥檚 go !

Si ejecutaste git pull origin master en la rama cabecera antes de enviarla a Github igual que yo, no te aflijas, te propongo la soluci贸n gracias a lo aprendido en el curso hasta ahora:

-Ejecuta git log para ver el historial, y regresa hasta el 煤ltimo commit que realizaste en la branch cabecera.

-Ve a la rama cabecera con git checkout cabecera

-Haz un reset para regresar a esa rama git reset uidcommit --soft

-Bien, ahora solo falta hacer el git push origin cabecera y podr谩s seguir con el curso bien 馃槈

Si tienen problemas para ejecutar Gitk. En WSL se ubican en la carpeta y luego lo ejecutan as铆:

gitk.exe .

Las clases con este man son sublimes.

Si a alguien no le funciona el comando gitk en mac lo que pueden hacer es instalar el GUI de git con el siguiente comando:

brew install git-gui

pero Freddy!! si esto del gitK siempre estuvo ah铆 驴porqu茅 nunca me lo contaste?? Me siento traicionado 馃槮
tal cual :鈥(

Otra herramienta muy util es: Sourcetree
https://www.sourcetreeapp.com/

Para los que usan VS Code existe la extensi贸n Git Graph, muestra los datos de las ramas, los commits que se han hecho, entre otras cosas:

Recuerden usar primero la consola antes que las herramientas.

Si usan Ubuntu en WSL2 para poder ejecutar gitk tienen que poner:
gitk.exe.

Bueno voy a dejar mi aporte para los que tengan problemas con el comando gitk :
.
Yo uso WSL2 en Windows10 claro. La cuestion es que no se ejecutaba gitk, resulta que debes instalarlo con sudo apt install gitk
.
Luego de eso igual me daba un error al querer ejecutar gitk, entonces solo debes colocar gitk.exe (listo, ya funciona).
.
Saludos desde Ecuador 鉂わ笍

Si se quiere crear una rama y luego hacer checkout a la rama creada, se puede usar el siguiente comando:

git checkout -b nombre-de-la-rama

Ejemplo:
La rama a crear ser谩 鈥減rueba鈥. Luego de crear la rama quisiera hacer checkout a esa rama para trabajar con ella, entonces hago lo siguiente:

git checkout -b prueba

Este comando me evita tener que escribir:

git branch prueba

Y luego

git checkout prueba

Wauuu no conoc铆a el comando gitk, esta super鈥

Si seguimos los pasos que dice Freddy deber铆amos crear la rama header y footer estando parados en la rama master; sin embargo si de pronto le hicimos checkout cabecera y se nos olvid贸 volver a pasar a la master para crear las otras dos, podemos borrar las ramas con el comando
git branch -d nombre-de-la-rama

en debian y derivados debes instalar gitk para poder tener acceso a el desde la shell, para instalarlo solo debes hacer

sudo apt install gitk

En las ultimas versiones de git para cambiar de una rama a otra , aparte de utilizar el comando git checkout 鈥渘ombre de la rama鈥 , tambi茅n se puede con el comando git switch 鈥渘ombre de la rama鈥 . Solo como un dato extra para todos.

Git Graph en el VS Code, muy buen modulo que hace algo similar al Gitk!

Ubuntu 19 no trae gitk instalado junto a git, acabo de probar. Pero se instala
sudo apt-get install gitk
y listo

隆Y por si aj谩! Si creaste una rama antes de hacer el commit en master y borrar algunos archivos que necesitas en la rama que vas a trabajar puedes borrar la rama que creaste con

git branch -d nombreRamaAEliminar

Si esto no funciona puedes forzarlo con:

git branch -D nombreRamaAEliminar

Gitk fue el primer visor gr谩fico que se desarrollo para ver de manera gr谩fica el historial de un repositorio de Git.

Con git graph en VS Code pueden ver todo el arbol de ramas, los commits, comentarios y hasta los cambios que han sufrido en el codigo los archivos.
(

Si en ubuntu o linux no esta instalado gitk instalar el paquete

sudo apt install gitk

Cuando tenemos varias ramas creadas en nuestro repositorio local y queremos subirlas todas las que creamos tenemos la posibilidad de usar git push --all esto subir谩 autom谩ticamente todas las ramas pero cuidado!!! (tambi茅n subir谩 todos los cambios que tengamos preparados de todas las ramas )

Recapitulando:

  • git init: genera el repositorio donde estamos ubicados.

  • git add: agrega un archivo a la 鈥渓ista de espera鈥, utilizando el comando 鈥渁dd .鈥 (add espacio punto) agrega todo lo que este dentro del directorio.

  • git commit: genera un nodo a nuestro repositorio, se recuerda que antes del commit siempre y digo SIEMPRE, se debe de utilizar el comando 鈥済it add nombre archivo o punto鈥

  • git checkout: se utiliza para 鈥渟altar鈥 entre commit. Si no puedes salir de un commit prueba utilizar 鈥済it checkout master鈥 馃槂

  • git status: le pido a GIT que me notifique si existen archivos que han sido modificado.

  • git log: me muestra los commit de la rama actual (me parece)

  • git branch 鈥渘ombre鈥: genera una rama partiendo del commit actual, o donde esta la cabecera.

  • git merge 鈥渋d commit鈥: le digo a GIT que voy a fusionar la rama del commit que estoy solicitando a la rama donde estoy actualmente.

  • git remote 鈥渘ombre鈥 鈥渦rl鈥: le digo a GIT que voy a conectar con un repositorio remoto.

  • git pull 鈥渙rigin鈥 鈥渕aster鈥: servidor -> PC. Siempre utilizar este comando antes del push.

  • git push 鈥渙rigin鈥 鈥渕aster鈥: PC -> servidor.

  • git tag 鈥渋d commit鈥: agrego al commit mencionado una etiqueta.

  • git tag 鈥渋d commit鈥 -d: borro la etiqueta del commit.

Espero que les sirva 馃槂

Nuevos commit para manejar ramas:

  • git show-branch: muestra cuales son las ramas que existen y cual ha sido su historia.

  • git show-branch --all: muestra algo muy similar a git show-branch pero con mas datos.

  • gitk: abre en un software con la historia de una manera visual ah铆 se pueden ver los cambios que se han hecho, da una idea de como esta estructurado el proyecto en cabecera, master, etc.

git show-branch: Nos muestra las ramas que existen y su historia
git show-branch --all: Nos muestra las ramas que existen y su historia de manera m谩s detallada
gitk: Abre en un software y nos muestra de manera visual las ramas e historia de nuestro proyecto

Hello guys, les comento que hoy estaba trabajando y le comente a mi compa帽ero que deb铆a crear una nueva rama y adicionalmente que no se olvidara de traer solo el 煤ltimo cambio que hizo en la rama anterior. Le escribo a los 5 minutos y le pregunte como trajo solo un commit espec铆fico porque yo no sab铆a y me respondi贸 tranquilo que ya est谩 hecho, solo copie el codigo del ultimo cambio y lo pegue en la nueva rama jajaja. Luego de eso me quede pensando y estaba convencido que hay forma con git de traer un commit or cambio espec铆fico y google me dio la respuesta jajjaja. Les comparto el link si algun dia enfrentan ese dilema.

Saludos

cherry-pick
https://filisantillan.com/blog/como-copiar-un-commit-de-una-rama-a-otra-con-git/

En mi terminal de linux estoy viendo que hay alias ya configurados por git entre ellos el del arbol:
glog = git log --oneline --graph

escriban alias en la terminal para ver todos los alias que hay configurados

Para saber que alias est谩n creados solo basta con colocar en la terminal 鈥渁lias鈥 y te saldr谩n la lista de los que tienes.

Dejo ese dato por si acaso.

Para los que no tienen gitk instalado y al instalarlo y ejecutarlo les da el siguiente error:

application-specific initialization failed: no display name and no $DISPLAY environment variable
Error in startup script: no display name and no $DISPLAY environment variable
while executing
"load /usr/lib/x86_64-linux-gnu/libtk8.6.so Tk"
(鈥減ackage ifneeded Tk 8.6.10鈥 script)
invoked from within
"package require Tk"
(file 鈥/usr/bin/gitk鈥 line 10)

Probablemente es porque est谩n usando WSL y no pueden usar gitk con WSL, porque el cliente gr谩fico en este caso es Windows, y Linux no puede ejecutar clientes gr谩ficos en Windows, igual gitk no es tan importante

Igual y no le ha pasado a todo mundo, pero si como yo, estas usando alguna terminal distinta de la que viene con la instalaci贸n de git par windows o pr谩cticamente est谩s usando una versi贸n de Windows Subsystem for Linux quiz谩s debas considerar instalar primero gitk:

 sudo apt install gitk

Ahora bien, estando en la carpeta de tu proyecto, para que abra el programa me funciono escribir:

gitk.exe

Hola, si alguien est谩 en Linux y en Distribuciones basadas en Debian (Debian, Ubuntu, elementary OS, etc.) si al hacer

gitk

Les dice command not found, pueden instalarlo haciendo

sudo apt install gitk

Y ya tendr谩n gitk, y recuerden, la terminal es la herramienta principa, Gitk solo una ayuda gr谩fica 馃槂

Aprendido: Como enviar y borrar ramas a github.
#1 creamos una rama (git branch name_branch)

#2 Enviamos la rama a github (git push origin name_branch)

#3 Para eliminar la rama localmente (git branch -d name_branch)
#4 Para eliminar la rama en github (git push --delete origin name_branch)

  • Para ver las ramas existentes (git show-branch --all)

En mi ubuntu 18.04 gitk no estaba instalado.

sudo apt-get install gitk

gitk no vino por defecto en ubuntu cuando instale git, pero para instalarlo pueden usar el comando sudo apt-get install gitk. Recuerden antes hacer sudo apt-get update

he instalado gitk con los comandos que han compartido los compa帽eros pero a la hora de querer ejecutarlo me sale este error, alguno sabe porque?

Para los que usan wsl, deberan ejectuar: cmd.exe /C gitk
Lo mismo si desean abrir un archivo html: cmd.exe /C chrome.exe blogpost.html

鉃★笍 驴Como eliminar una rama y que se vea reflejado en Github?

Cre茅 una rama y la mande a Github (con gitpush) pero luego me di cuenta que no era esa la que quer铆a. Asi que la elimine en Git local con:

git branch -d nombreRama

Luego hice git pull y push para que se envie a Github, pero en github segu铆a existiendo la rama, mientras que en mi local ya no.

As铆 que us茅 el comando :

git push origin -d nombreRama

y listo, la rama tambi茅n se elimin贸 en Github. 馃榾

Este comando te permitir谩 borrar una rama local:

git branch -d <nombre de la rama> 

Este comando te permitir谩 borrar una rama remota:

git push origin --delete <nombre de la rama>

Como profesionales del c贸digo no olvidemos siempre usar todo en consola.

Para facilitarnos un poco la vida a la hora de hacer 鈥減ush鈥 en alguna branch les dejo este c贸digo!!

git checkout cabecera
git push --set-upstream origin cabecera

de esta manera queda configurado para que s贸lo con ejecutar el comando

git push

git ya sepa a cual branch en origin 鈥減ushear鈥 jaja

Algo que no se menciona es que, si intentas hacer push a una rama que tiene el mismo nombre que un tag te va a dar un error:

error: src refspec base matches more than one

esto te obliga a especificar la locaci贸n; si entras a tu .git veras una carpeta llamada refs donde esta el head los tags y las direcciones remotas, en head estar谩n tus ramas y esta es la direcci贸n que usaremos para referirnos a esa rama

$ git push origin refs/heads/nombreRama

tienes que tener cuidado con este comando ya que si agregas " : " antes de refs esto borrar谩 dicha rama si es que se encuentra en tu repositorio remoto, as铆:

$ git push origin :refs/heads/nombreRama

si saben otra manera de hacerlo ser铆a bueno saberlo yo solo encontr茅 esta.

Hola! Yo tuve problemas para poder hacer el

GIT PUSH ORIGIN HEADER 

<GIT PUSH ORIGIN FOOTER>


A la hora de ingresarlo en Github porque ahora pide un token personal, pero la manera de hacerlo es muy sencillo.

Dan el comando en la terminal, les pedir谩 USUARIO, meten su correo, despu茅s contrase帽a y ah铆 pegan el token de acceso personal.

Para crear el TOKEN DE ACCESO PERSONAL de Github solamente es ir a CONFIGURACI脫N =>DEVELOPER SETTINGS => FINE GRAINED TOKENS y ah铆 generan uno.

Es todo! Exito!

Aqu铆 Freddy se equivoc贸 sobre el comando gitk

Command 'gitk' not found, but can be installed with: sudo apt install gitk

y hay una pregunta mal formulada en el examen que la perd铆, porque no viene instalado por defecto, al menos en mi terminal de Linux y eso que yo actualic茅 e hice Upgrade de los paquetes.

Si por algun motivo se confundieron al escribir el nombre de la rama, como en mi caso, es muy facil arreglarlo.
Primero se van a la rama que le quieren cambiar el nombre con

<git checkout <su rama>>

luego con el siguiente comando le cambian el nombre

<git branch -m <nombre_nuevo>>

驴Alguien conoce infograf铆as, documentaci贸n, res煤menes o algo as铆 sobre Git para tener toda esta informaci贸n para consultarla de forma r谩pida como apuntes? 隆Ser铆a de gran ayuda!

Tengo que contarles esto鈥 Se me ocurri贸 hacer todo el proyecto en la carpeta donde tambi茅n estoy guardan mis notas que es un word cualquiera鈥 Lo gracioso es que cada vez que agrego algo a mis notas debo a帽adir todo, hacer el commit, el pull el push, la rama鈥 Deber铆a sacar mis notas de la carpeta o sigo practicando? jaja un abrazo 馃槂

Resumen de la clase:
Los comandos de esta clase se basaron en el manejo de ramas para ver que se suban al repositorio remoto o cu谩les existen, se utilizaron los siguientes:

$git show-branch (Muestra el listado de ramas creadas, con su historia)
$git show-branch --all (Muestra el listado de ramas creadas, con su historia y m谩s detalles)
$git push origin _name_ (Env铆a al repositorio remoto la rama name)
$gitk (Apoyo de sfotware visual para ver la estructura del proyecto, ordena y decora la historia)

Espero que les ayude.

me encanta mucho este curso, freddy ha explicado muy bien git y github, he tomado nota y si cualquier cosa se me olvida, repaso el video donde explica x tema y listo, con esto puedo controlar los proyectos de mi equipo para mi nuevo emprendimiento

No se si alguien ya lo escribio debajo pero pueden enviar varias ramas en el mismo comando. con
git push origin master branch1 branch2 branch3 branch4

y asi las que quieran, y tambien est谩 super interesante poder traerse alg煤n archivo individual de una rama a otra con el siguiente comando
git checkout nombrederama nombredearchivo.extension // este comando trae el archivo solicitado a la rama donde estes actualmente y me parece super util, sino haces un commit antes de cambiarte de rama se mantendra el archivo en memoria ram borrado de todas las ramas, es importante hacer commit antes de cambiarte de rama para no tener que restaurar el archivo en otras ubicaciones y elimine el efecto de lo que has decidido borrar.

Sourcetree tambi茅n permite una herramienta de visualizaci贸n de todas ramas y sus commits, tambi茅n una interfaz gr谩fica completa para los comandos de git.

https://www.sourcetreeapp.com/

Hola a todos, para aquellos que usen Linux, gitk no esta instalado por defecto, ni tampoco se instala con git. Dependiendo de la distribuci贸n que utilicen el comando para instalar va a ser diferente pero el paque en s铆, tendr谩 el mismo nombre gitk. En mi caso uso Ubuntu se puede usar:

sudo aptitude install gitk
o
sudo apt install gitk

Me sorprendi贸 esta 煤til herramienta gr谩fica que ten铆a git bajo la manga, la verdad no la conoc铆a. Sab铆a de algunas comerciales como Git-Kraken o libres como Git-Extensions.

En mi ubuntu 18.04 gitk no estaba instalado.

sudo apt-get install gitk```

me encanta tener que usar la consola sobre todo porque la gente piensa que soy inteligente jajaja

驴Qu茅 opinan de GitKraken?

Instale en la Terminal el Git K de 02 formas, busque en la documentacion, me eche un clavado en Stack Overflow y no encontre nada, no logre que funcionara, me siento traicionado鈥

Sin embargo probe con Git Kraken y me gusto mas jaja el problema es la version de prueba de 06 dias 馃槬馃槬馃槬

si les gusta mucho sublime text les recomiendo esta herramienta que se llama 鈥渟ublime merge鈥 es una interfaz visual de git muy completa, siempre es bueno usar la consola aunque tener una interfaz visual te puede ahorrar un poco de tiempo y es un poco mas c贸modo a la vista que la consola.
Igual es bueno aprender como funcionan todos los comandos en la consola antes de usar una interfaz visual, as铆 sabes como funcionan todos estos programas por detr谩s y te ayuda a desenvolverte mas f谩cilmente usando estas aplicaciones.

bueno a en mi caso el gitk, que viene por defecto con git. no vino

para los que no les funciona el gitk

sudo apt-get install git-gui

Aqu铆 los que nos sentimos traicionados cuando freddy presento a gitk

Para aquellos que est茅n en Mac con un versi贸n reciente de MacOS y no les corra el comando gitk, simplemente deben instalar git-gui, lo hacen desde la terminal de comandos escribiendo:

brew install git-gui

Espero les sirva 馃槃

en VS Code hay una extension que es Git Graph, y es muy parecido a gitk y bien ordenado

Datazo sobre gitk:
Freddy menciona que se instala de forma automatica, pero esto no es verdad.
Se instala por defecto en Windows y macOs, no en Linux.
Por lo que pude averiguar esto sucede porque que instala de forma automatica con git bash.
Ojala alguien vea esto, porque se ira al fondo. 脡xitos

Para instalar gitk en Ubuntu me sirvieron estos pasos:

  • Actualizar
sudo apt update
sudo apt upgrade
  • Instalar
sudo apt install gitk
sudo apt update -y
sudo apt install -y gitk
  • Si quieres remover los paquetes
sudo apt remove gitk

馃煝**Duda existencial:** Existe alguna raz贸n para ir a la rama cabecera para enviar desde ah铆 el push al repo remoto sabiendo que desde la rama master puedes enviarla (_git push origin cabecera_) sin problema?馃

como cuando te quedas as铆 馃槷 al ver todo lo que vas aprendiendo aqu铆 que en la U, sorprendente!!
#NuncaparesdeAprender

Branch GitHub: Puedes trabajar con ramas que nunca env铆as a GitHub, as铆 como pueden haber ramas importantes en GitHub que nunca usas en el repositorio local. Lo importante es que aprendas a manejarlas para trabajar profesionalmente.

* Crear una rama en el repositorio local: git branch nombre-de-la-rama o git checkout -b nombre-de-la-rama.
* Publicar una rama local al repositorio remoto: git push origin nombre-de-la-rama.

IMPORTANTE, Recuerda que podemos ver gr谩ficamente nuestro entorno y flujo de trabajo local con Git usando el comando gitk.


Verificar ramas en Git y GitHub:

  • git show-branch --all, Nos muestra tanto como la version en linea de GitHub, hasta la version local

Trabajo con el IDE Visual Studio, el cu谩l lo tengo integrado al GitLab en un servidor (propio de la empresa), Esta integraci贸n permite de forma visual el manejo de los comando add, commit, pull, push, branch, etc. Es importante saber las bases en la consola para saber que estamos haciendo visualmente.

para cambiar el nombre de master a main

git branch -m <nuevo-nombre>```

Si no tienes gitk instalado y usas una distro de linux basada en debian usa:
sudo apt install gitk

Git checkout cabecera me devuelve a cabecera y me cambia todos los archivos en mi disco duro.
git branch me muestra todas las ramas que en este momento existen.
Arbolito: lo creamos hace un rato y me muestra la historia de esas ramas, de abajo hacia arriba donde arriba es lo mas reciente y abajo es lo mas viejo.
Hay otro par de comandos importantes para manejar ramas:
Git show-branch que nos muestra cuales son las ramas que existen y cual ha sido su historia.
Git show-branch --all que nos va mostrar algo muy similar pero con un poco mas de datos.
Gitk hace es abrirte en un software esa historia de una manera ultravisual de hist贸ricamente que ha pasado y darte una idea de como esta estructurado tu proyecto en cabecera, en master, etc
Git Branch hay dos ramas master y cabecera, no hemos enviado cabecera
Git pull origin master, recuerden porque hay que traer la 煤ltima versi贸n
Git checkout cabecera, nos movemos a nuestra rama de cabecera
Git push origin cabecera, vamos a empujarle a origin que es el nombre de nuestra rama en internet la rama cabecera, luego enter y vas a github y aparece cabecera.
Crearemos un par de ramas mas, creemos nuestras ramas de trabajo header y footer.
Git checkout master, volvemos al master
Git branch header, se hace desde ah铆 porque es la versi贸n mas reciente
Git Branch footer , con eso ya tengo los branches creados.
Git Branch, me muestra master, cabecera footer y header.
Los voy a enviar a internet para que si alguien copia de internet estos datos ya los tiene muy claro.
Git push origin header, esto va enviar mi rama header
Git push origin footer, esto va enviar mi rama footer

Al hacer un git pull origin master me da error. Dice que no puede sincronizar con Git Hub. Pero me aparece la rama Origin? Que estoy haciendo mal?

Un aporte para los que usamos LINUX, gitk no esta instalado por defecto en todas las distribuciones, se tiene que instalar:

sudo apt install gitk (para debian y derivadas)
sudo dnf install gitk (para redhat y derivadas)
sudo pacman -Sy gitk (para arch y derivadas)
Slackware al parcer si lo trae por defecto

Nuevos commit para manejar ramas:

  • git show-branch: muestra cuales son las ramas que existen y cual ha sido su historia.

  • git show-branch --all: muestra algo muy similar a git show-branch con mas datos.

  • gitk: abre un IDE para git con la historia de una manera visual ah铆 se pueden ver los cambios que se han hecho, da una idea de como esta estructurado el proyecto en cabecera, master, etc.

Manejo de ramas en GitHub

  • Primero puede cambiar de rama

git checkout nombre-de-larama

  • Revisar las ramas que existen

git branch

  • Cuales don las ramas que existen y cual es su historia

git show-branch

git show-branch --all

  • Ver todo la historia de manera visual

gitk

Estoy usando ohmy zsh y no me abre gitk 馃槮

e intentado instalar gitk pero no me abre ):

$ git show-branch
Lista cada una de las ramas que existen en tu repositorio local y su 煤ltimo commit realizado, muestra con asterisco la rama en la cual est谩s actualmente; las ordena alfab茅ticamente.
Saludos 馃槂

Vaya gitk me sorprendi贸, no tenia conocimiento de que exist铆a y se pod铆a ver de forma gr谩fica.

git show-branch --all -> Muestra el historial de branches en el local

Usando la consola uno se ve mas pro!!

Queremos lo mejor para ti, jajajaja gracias freddy 鉂わ笍

Pero Freddy!
Si gitk estuvo ah铆 驴por qu茅 nunca me lo contaste?
Me siento traicionado!

Recordar: Siempre hay que traer la ultima versi贸n.

git pull origin master

gitk No viene instalado en Debian 10 馃槮

Chicos, por otra parte para no hacer el comando 2 veces pordemos hacer lo siguiente.

git push origin header footer

Est谩 bien acostumbrarse a la consola, de esa manera te volv茅s experto si o si !! siempre y cuando lo uses claro je!