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: c贸mo traer commits antiguos al head de un 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

Tu futuro con Git y GitHub

43/43
Recursos

隆Felicitaciones por terminar el Curso profesional de Git y GitHub!

Aprendimos c贸mo usar Git y GitHub, hacer merge request, investigar qui茅n hizo qu茅 a trav茅s de la l铆nea de comandos, c贸mo utilizar GitHub Pages, c贸mo revertir cambios, c贸mo usar git stash, git tags y mucho m谩s. Ahora queda de tu parte experimentar, fallar, subir, borrar y por 煤ltimo hacer deploy de tu proyecto y compartirlo con la comunidad.

Recuerda resolver los ejercicios, completar el examen, darle 5 estrellas al profesor y compartir tu proyecto, notas, todas tus dudas y comentarios en la secci贸n de discusiones.

Aportes 690

Preguntas 44

Ordenar por:

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

o inicia sesi贸n.










#Resumen, aportes y apuntes del Curso Profesional de Git y GitHub

Si vas a renovar tu suscripci贸n en Platzi, puedes adquirir un mes adicional con el siguiente enlace: https://platzi.com/c/ayenque 馃槈

Pueden descargarlo en formato PDF: Curso Profesional de Git y GitHub.pdf

Puedes ver en presentaci贸n Canva : Dise帽o - Curso Profesional de Git y GitHub






































Enlace Original

Silicon Valley鈥 voy por ti鈥

Me gust贸 tanto el curso que lo dibuj茅 馃挌
.

Adjunto las im谩genes que paso Freddy, por si alguien los requiere.

Gracias por este curso! ahora a aplicar lo aprendido!

Excelente curso para aprender Git de verdad y sumarlo a otra de las habilidades que ya sabes!

M谩s cursos con Freddy? Lo hizo genial!

Para tener en cuenta que hay una pregunta del examen que esta mal formulada, 鈥淓st谩s en la rama master y quieres mandar los 煤ltimos cambios que guardaste con git stash a la rama retomando-los-cambios (la rama no ha sido creada a煤n). 驴Cu谩l de las siguientes soluciones es incorrecta?鈥 ah铆 en realidad la pregunta es cual de las soluciones es correcta. Por favor tener en cuenta. Saludos

Este curso hubiera sido asombroso cuando reci茅n sal铆 de la universidad, sin embargo me toc贸 aprender casi todo esto por la mala, con estr茅s y sudor mientras trataba de sacar mis trabajos. Ahora ya tengo 5 a帽os de experiencia y ya pase por Bitbucket, Gitlab y Github pero siempre tuve la duda si de verdad ya ten铆a un scope completo del tema o si me faltaba mucho. No voy a mentir, muchos de los videos los escuche a modo de podcast mientras trabajaba al ser temas que ya sab铆a, pero en cuanto escuchaba un tema/comando nuevo lo pon铆a en pr谩ctica en mi local (del proyecto en el que estoy) y son los momentos que m谩s apasionaron porque ya estaba llenando esos huecos de conocimiento que me faltaba. Este curso me ayud贸 a reafirmar conocimiento y entender mejor el porqu茅 de algunos comandos, Gracias Freddy por hacerme un poco m谩s ameno el aprender.

Les dejo mi res煤men completo del curso, si茅ntanse libres de hacerme pull request si les agrada:

https://github.com/behagoras/gitgithub/blob/master/.gitignore

(PD: En un comentario anterior estaba roto el link, ya lo arregl茅)

En el siguiente link les comparto todos mis apuntes del curso.
https://1drv.ms/u/s!Aq-vBzCH1G7K-2z3EyqgZG6RMWel?e=ZTpO7g

Complet茅 todos los retos! 馃槃 gracias se帽or Freddy, ahora soy el amo y se帽or de Git en la empresa en la que trabajo, mis compa帽eros se han quedado pasmados cuando ven todo lo que se puede hacer con git, especialmente cuando me encargo de arreglar cagadas

*******************
****Iniciar Git****
*******************

git int

*******************
****Iniciar Git****
*******************

**********************************
*******Configuraci贸n de Git*******
**********************************

git config
git config --list
git config --list --show origin
git config --list --show-origin
git config --global
git config --global user.name "SC"
git config --global user.email "[email protected]"

**********************************
*******Configuraci贸n de Git*******
**********************************

********************************************
******Agragar a la zona de preparaci贸n******
********************************************

git add Archivo.txt

git add .

********************************************
******Agragar a la zona de preparaci贸n******
********************************************

****************************
*********Ver estado*********
****************************

git status

****************************
*********Ver estado*********
****************************

***************************************************************************
*****************Quitar de la zona de preparaci贸n**************************
***************************************************************************

git rm --cached archivo.txt (Quitar de la zona de preparaci贸n).

***************************************************************************
*****************Quitar de la zona de preparaci贸n**************************
***************************************************************************

************************************************************
**********************Realizar commint**********************
************************************************************

git commit -m "Este es el pimer commit de este archivo"
git commit -am "Este es el pimer commit de este archivo"

************************************************************
**********************Realizar commint**********************
************************************************************

*****************************************************
*******Ver el historial de cambios del archivo*******
*****************************************************

git log
git log Archivo.txt

*****************************************************
*******Ver el historial de cambios del archivo*******
*****************************************************

***************************************************************
************Muestra todos los cambios sobre un archivo*********
***************************************************************

git show Archivo.txt

***************************************************************
************Muestra todos los cambios sobre un archivo*********
***************************************************************

**************************************
**********Comparar versiones**********
**************************************

git diff commint commint

**************************************
**********Comparar versiones**********
**************************************

*****************************************************************************
************************Volver a una versi贸n anterior************************
*****************************************************************************

git reset commit --hard (borramos todos los cambios y lo que tengamos en staging) 

git reset commit --soft (soft conservamos cambios y lo que tengamos en staging) 

git checkout (commit) Archivo.txt

git checkout (rama) Archivo.txt
*****************************************************************************
************************Volver a una versi贸n anterior************************
*****************************************************************************

****************************************************************************
**************************Ver Cambio en bytes*******************************
****************************************************************************

git log --stat(Cambio en bytes)

****************************************************************************
**************************Ver Cambio en bytes*******************************
****************************************************************************

***************************************************************************
****************************Crear una rama*********************************
***************************************************************************

git branch (branchName)

***************************************************************************
****************************Crear una rama*********************************
***************************************************************************


***************************************************************************
**************************Cambiar de rama**********************************
***************************************************************************

git checkout (branchName)

***************************************************************************
**************************Cambiar de rama**********************************
***************************************************************************

*******************************************************************
************************Merge entre branchs************************
*******************************************************************

git merge (branchName)

**Estar en la rama master o en la que se quiere dejar el <Head>**
*******************************************************************
************************Merge entre branchs************************
*******************************************************************

****************************************************
************Traer un repositorio externo************
****************************************************

git remote add origin (url)
git remote (muestra el origen)
git remote -v(es verval)

git pull origin master --allow-unrelated-histories (Fuerza la union de las diferentes historias)

git pull origin master (Descarga cambios)

git push (origin) (master) (Sube Cambios)
****************************************************
************Traer un repositorio externo************
****************************************************

*************************************
**************Seguridad**************
*************************************

ssh-keygen -t rsa -b 4096 -C "[email protected]" (crea la llave publica y privada)
eval $(ssh-agent -s) (saber si el agente ssh esta ejecuntando)
ssh-add ~/.ssh/id_rsa (agregar la llave privada)

git remote set-url origin git@github.com:gsuscastellanosSC/hyperblog.git (cambiar url para que sea con ssh)


*************************************
**************Seguridad**************
*************************************

**********************************
***************TAGS***************
**********************************

git log --all(Muesta toda la historia)
git log --all --graph (Muestra toda la historia con la ineracci贸n de las ramas)
git log --all --graph --decorate --oneline
alias arbolito="git log --all --graph --decorate --oneline"(forma de alias en linux)

git tag -a v0.1 -m "apendiendo tags en git" (hash del commit) (crear un tag)
git show-ref --tags

git push origin --tags (enviar los tags al repositorio remoto)
git tag -d v0.1   && $ git push origin :refs/tags/v0.1 (Borrar tags)


**********************************
***************TAGS***************
**********************************

************************
********ramas***********
************************

git show-branch --all (驴Cuales branch existen y sus historias)
gitk (igual que la anterior per con gui)
git push origin :[nombre_branch] (Elimina rama remota)


************************
********ramas***********
************************

**************************
***驴como hacer un Fork?***
**************************
git clone git@github.com:gsuscastellanosSC/hyperblog-1.git

git remote add upstream (url-github)
git pull upstream master (trae todos los cabios de master del origen upstream)

**************************
***驴como hacer un Fork?***
**************************

***************************************
*****Cmabiar el nombre de una rama*****
***************************************

git branch -m nombre-rama nombre-rama-nueva

***************************************
*****Cmabiar el nombre de una rama*****
***************************************

**************************************************************************************
********************Git Rebase: Reorganizando el trabajo realizado********************
**************************************************************************************

git rebase "master" (desde otra rama)

git rebase "otra rama" (desde master)

***************************
******Elminar una ama******
***************************

git branch -D "otra rama"

***************************
******Elminar una ama******
***************************

**************************************************************************************
********************Git Rebase: Reorganizando el trabajo realizado********************
**************************************************************************************


*******************************************
*****************Git Stash*****************
*******************************************

git stash (crea un stash)
git stash list (lista los stash)
git stash pop (carga el stash)
git stash branch english-version (Crear una rama con el stash)
git stash drop (borrar un stash)

*******************************************
*****************Git Stash*****************
*******************************************


******************************************************
*************LIMPIAR ARCHIVOS NO DESEADOS*************
******************************************************

git clean --dry-run (ver que se va a borrar)  **Ejecuci贸n en seco, como probraban los cohetes y los barcos**
git clean -f (borrar)       

******************************************************
*************LIMPIAR ARCHIVOS NO DESEADOS*************
******************************************************

***************
******LOG******
***************

git log --oneline

***************
******LOG******
***************

*************************************************
****驴Como traer un solo commit de otra rama? ****
*************************************************

git cherry-pick "commit"

*************************************************
****驴Como traer un solo commit de otra rama? ****
*************************************************

****************
****Remendar****
****************

git commit --amend (coloca los cambios en el 煤timo commit realizado)

****************
****Remendar****
****************

*******************************************************************************
****************Git Reset y Reflog: 脷sese en caso de emergencia****************
*******************************************************************************

git reflog (Permite ver el log completo)

git reset HEAD@{2}

git RESET --hard 9ea6558

*******************************************************************************
****************Git Reset y Reflog: 脷sese en caso de emergencia****************
*******************************************************************************

**************************************************************************
************Buscar en archivos y commits de Git con Grep y log************
**************************************************************************

git grep -n color (lugares donde uso la palabra color)

git grep -c color (cuanteas veces esta la palabra color)

$ git log -S "Cabecera" (Busca en los commits la palabra cabecera)


**************************************************************************
************Buscar en archivos y commits de Git con Grep y log************
**************************************************************************

************************************
************Alias en Git************
************************************

git short log (Ver commits realizados por persona)
git shortlog -sn (驴cuantas veces han realizado commits, cada persona?)
git shortlog -sn --all (detalle de absolutamente todos los commits)


git config --global alias.stats "shortlog -sn --all --no-merges" (alias)

************************************
************Alias en Git************
************************************

**************************************************************
**********************Detalle de cambios**********************
**************************************************************

git blame blogpost.html -c (Sobre un archivo)
git blame --help
git blame css/estilos.css -L35,58

**************************************************************
**********************Detalle de cambios**********************
**************************************************************

*******************************************
*************Ver ramas remotas*************
*******************************************

git branch -r
git branch -a


*******************************************
*************Ver ramas remotas*************
*******************************************```

Todos mis apuntes del curso!

Tomar de nuevo el curso de Git y GitHub fue una buena decisi贸n. Pude afianzar algunos conceptos que no logr茅 poner en claro cuando tom茅 el curso dictado por Leonidas Esteban en 2018. No digo que Leonidas Esteban fue mal profesor, ni mas faltaba. Al contrario, el hizo su mejor esfuerzo y aprend铆 cosas muy importantes con sus ense帽anzas. A Freddy le agradezco su pasi贸n y energ铆a en todo lo que hace. Su forma amena de ense帽ar invita al aprendizaje y a querer seguir aprendiendo. 隆Excellent teacher隆

El curso muy bueno pero el examen esta algo mmm ambiguo

Chicos aqu铆 les comparto un repositorio que hice con un README de todos o casi todos los conceptos del curso =D pueden guardarlo para cuando necesiten recordar conceptos, o hacerle un fork y colaborar al README para mejorarlo y luego hacerme un pull request y con gusto le har茅 merge a sus colaboraciones =D

https://github.com/bryan2811/Curso-de-Git-y-Github-Platzi

Les comparto el resumen de los comandos m谩s utilizados en git y el uso con Github.

Comandos en Git (La gu铆a completa)

Cualquier aporte que quieran hacer, ya saben c贸mo hacer un pull request 馃槃

Muy completo el curso y muy bueno. Ahora a rendir el examen 馃槂

Excelente curso aprend铆 mucho de Freddy como siempre un gran maestro Jedi, aqu铆 les comparto en un pdf un resumen de los comandos que vimos durante el curso, espero les sea de gran ayuda.
(https://1drv.ms/b/s!Ami90c8CUaSPinPr9DVDxxAafg4L)

Les paso la siguiente gu铆a de Git, con algunos comandos b谩sicos.
.

.

.

.

.

.

.

.

.

Una vez aprueben el curso, obtengan su insigna respectiva en LinkedIn (para los que tengan un perfil ah铆).
Acabo de aprobar el examen de Platzi y tambi茅n obtuve mi certificaci贸n de conocimientos en LinkedIn (tambi茅n preguntaron sobre comandos como git merge --squash y git bisect)

El curso estuvo bien completo. Bastante que poner en practica.
脕nimos

馃挕 DevOps es una filosof铆a que re煤ne a los desarrolladores y el negocio para construir e implementar aplicaciones continuamente, con una calidad mucho m谩s alta.

Les dejo las notas y comandos unificadas de los dos cursos con Leonidas Esteban y Freddy Vega

Entiendo buenas pr谩cticas 馃槃

aaaaaah lo termin茅 que emoci贸n, terminamossss 馃槃
Hive five a todos 鉁

Hola, queria mostrarles esta interesante aplicacion que permite crear plantillas del archivo .gitignore para varios tipos de proyecto, les dejo el enlace: https://www.gitignore.io/

Nosotros terminando este curso:

Si alguien se pregunta que paso con la p谩gina de freddy, aqui esta https://freddier.github.io/hyperblog/blogpost.html

馃弳 Ha sido un largo viaje este curso Profesional de Git y GitHub, al inicio no sab铆a absolutamente nada de estos dos temas por lo que honestamente fue el curso m谩s desafiante que he hecho hasta la fecha en Platzi, me llev贸 un buen tiempo completarlo, tuve diversos problemas, pero con ayuda de los comentarios de la comunidad y mi dedicaci贸n los pude solucionar todos.
Vali贸 completamente la pena, es un 10/10. Hasta nostalgia me dio terminarlo.
馃挕隆A seguir aprendiendo!

Para finalizar y despedirnos me gustar铆a compartir con ustedes el siguiente enlace; https://girliemac.com/blog/2017/12/26/git-purr/ Que es un blog donde se explica GitHub con gatos, si, efectivamente, con gatos. Se acuerdan de JS for Cats. Bueno as铆 pero con github

Muy buen curso, ya hab铆a tomado el anterior con Leonidas Esteban el cual me hab铆a gustado mucho, pero con 茅ste nuevo curso aprend铆 cosas nuevas, complemente y reforc茅 los conocimientos que ya ten铆a.
Freddy es un gran profesor.

Me encantar铆a continuar con opciones m谩s avanzadas de GitHub. Estuve revisando y hay formas de hacer wikis, de hacer scan de vulnerabilidad, ramas protegidas, me encantar铆a una continuaci贸n de este curso.

Oigan!, 驴Qu茅 tal si hacemos un peque帽o proyecto para poner pr谩ctica lo del curso?
Algo simple, un login de alguna red social, una p谩gina con puro HTML lo que se nos ocurra, el chiste es poner en pr谩ctica lo aprendido馃

Hice un resumen muy completo de lo que vimos en este curso, les recomiendo leerlo en: Resumen curso git y github

Excelente! A seguir aprendiendo

Hola! Pues como alguien que recientemente termin贸 el curso, les dejo los apuntes que fui haciendo. Espero que les sirva y nunca dejen de aprender 馃槃
Apuntes en Notion

Felicidades a todos por llegar hasta Aqu铆!!

Al fin 馃槃!

Solo me tomo 4,500 a帽os.

Aqu铆 les paso enlace a un pdf con un resumen del curso.

Hay notas y aportes de los compa帽eros

Muchas Gracias a Todos

Excelente curso, excelente material y excelente tutor 馃憦

Muchas gracias por el curso Fredy , ahora a por los demas 馃槃

Muy buen curso!! Aprend铆 much铆simo, reforc茅 conceptos y aprend铆 la teor铆a detr谩s de todo!!

LLEGU脡 AQU脥 鈥 VALI脫 LA PENA

Me daba miedo aprender git y github porque asum铆 que era muy complicado de aprender, pero desde que comence me parece una maravilla de herramienta, gracias Platzi:)

Aqu铆 mi github, ahora a por m谩s 馃懢

Como aqu铆 termina el curso, dejo mis notas que hice en Google Docs por si les es 煤til

https://docs.google.com/document/d/1gqMq_5lInJ-q7zGt-3N0VkEn0Pop4ZMjw6a4PkAocOE/edit?usp=sharing

Cualquier error comunic谩rmelo en Twitter XD

Muy buen curso, aprend铆 muy buenas pr谩cticas y me ampl铆o mi criterio para la gesti贸n de proyectos de desarrollo.

Se nota que Freddie es un excelente maestro, no me aburri贸 en ning煤n momento, las explicaciones muy claras y ejemplos bien aterrizados, felicitaciones por el curso.

Freddy muchas gracias, el curso estuvo excelente, la verdad fue muy practico y qued贸 muy claro todo.

-- HOLA RAPIDOSO DEL FUTURO --
Curso de Git y GitHub

W I N D O W S   1 0 


GIT BASH:


B脕SICOS:

- $git init (inicia el repositorio de git);

- $git config --list (se muestra nuestros datos en git);

- $git config --list --show-origin (se muestra donde se ubica el documento que guarda los datos);

- $git config --global user.name "Nombre_de_usuario" (cambia el nombre de usuario);

- $git config --global user.email "direccion_email" (cambia la direcci贸n email);

- $git add . (A帽ade todos los archivos nuevos y nuevos cambios);

- $git commit -m "Texto" (Crea commits y pones tu mensaje);

- $git commit -am "Texto" (A帽ade los nuevos cambios y crea un commit);

- $git commit --amend (se cambia el texto del commit anterior);

- $git status (ves el estado en cuanto el a帽adir archivos y cambios);

- $git log (ves todos los historiales de commits);

- $git chekout (tu l铆nea vuelve a la versin elegido, pero el master queda intacto);

- $git log --graph (se muestra los commits con las ramas de forma gr谩fica);

- $gitk (muestra todos los cambios visualmente en un software separado);


RAMAS:

- $git branch nombre_de_la_rama (se crea una rama clonando el master o en la que est茅s en header);

- $git branch nombre_de_la_rama -d (se borra la rama si es que est谩 vac铆a);

- $git branch nombre_de_la_rama -D (se borra la rama con todo lo que tenga dentro);

- $git merge nombre_de_la_rama -m "texto" (se vincula la rama que invoques a la rama actual);

- $git branch -a (muestra todas las ramas, tanto las locales como las remotas);


VERSIONES (TAGS):

- $git tag -a v0.1 -m "Texto" n煤mero_del_hash (Se agrega una nueva versin con tag);

- $git tag (muestra todas las listas de los tags);

- $git show-ref --tags (Se muestran todos los tags con su hash del commit anexado);

- $git tag -d nombre_del_tag (borra un tag, hay que hacer un push de tags y luego un refs de tags);


REBASE:

- $git rebase nombre_de_la_rama (es para unir los cambios y el historia de los cambios, no es
recomendable en repositorios remotos){
	
	Primero hay que hacer un git rebase del master a la rama secundaria
	$ git rebase master (estando en la rama experimental)

	luego se cambia al master... para unir todos los datos que estn en la experimental
	$git rebase experiemntal (estando en master)

	En caso de que haya salido algo mal, habr谩 que hacer un arreglo manual
	Al arreglarlo puede que salga en el directorio "master/Rebase 1/1"
	Para quitarlo hay que hacer el siguiente comando:
	$git rebase --abort

	Si por alguna raz贸n te saliste de uno de los pasos de seguir el rebase, te saldr谩
	en el directorio "master/Rebase 1 / n煤meros_que_sean", se puede usar el --abort, 
	pero si se quiere seguir haciendo el proceso del Rebase de har谩 el siguiente comando:
	$git rebase --continue

}


STASH (GUARDADO EN MEMORIA QUE NO AMERITA COMMIT):

- $git stash brach nombre_de_la_rama (permite guardar en memoria nuestro trabajo que no hemos 
	grabajo en un commit, ahora... si te preguntas porque no guardar铆as cambios en un 
	commit, bueno... hay algunos cambios no tan significativos como para crear un commit 
	por estos. Por lo que se guarda esto en una branch para guardarlo para m谩s tarde y al 
	acabarlo hacerle un commit);

- $git stash pop (regresa el estado anterior antes de hacer el stash);

- $git stash list (se ve lo guardado en el stash);

- $git stash drop (borra lo dentro en el stash);


CLEAN:

- $git clean --dry-run (muestra los archivos que se van a eliminar en la limpieza);

- $git clean -f (elimina los archivos de la limpieza);


CHERRY PICK:

- $git cherry-pick n煤mero_del_hash (nos trae commits viejos de otras ramas);


AMMEND (ARREGLAR COMMITS):

- $git --amend (este edita el commit anterior con los cambios nuevos, 
	en este caso hay que hacer un "git add ." con los cambios que se
	quieren a帽adir);


EMERGENCIA DE RECUPERACI脫N:

- $git reflog (te ense帽a un historial de todo lo ocurrido, no se puede borrar);


- $git reset --hard n煤mero_del_hash (regresas tu documentos a la versin que escogiste permanentemente);

- $git reset --soft n煤mero_del_hash(regresa el repositorio al commit escogido pero guarda
	lo que esten staging para mantenerlo en el siguiente commit);


B脷SQUEDA (Grep para archivos, Log para los commits):

- $git grep palabra_x (muestra el lugar donde se escrib贸 esta palabra en los documentos);

- $git grep -n palabra_x (muestra la l铆nea en las veces que se escribi贸 esa palabra);

- $git grep -c palabra_x (muestra cuantas veces se us贸 esa palabra);

-git log -s palabra_x (muestra los commits donde se us贸 esa palabra en el mensaje);


COLABORATIVAS:

- $git shortlog (muestra en general cuantos y cuales commits ha hecho cada participante);

- $git shortlog -sn (muestra el n煤mero de commits hecho por cada participante);

- $git shortlog -sn --all (muestra el n煤mero de commits hecho por cada participante, y muestra
	incluso los borrados u ocultos... #GitNuncaOlvida);

- $git shortlog -sn --all --no-merges (muestra el n煤mero de commits hecho por cada participante
	sin contar los merges, ya que esto s贸lo es unir dos ramas y no cuenta como "trabajo" XD);

- $git blame nombre_del_archivo (muestra que cambios en el archivo hizo cada quien);

________________________________________________________________________


GITHUB:

- $git remote add origin https://direccion_random.com (enlaza nuestro repositorio a uno remoto)

- $git remote -v (nos muestra en que enlace est谩 nuestro repositorio remoto);

- $git push origin master (le env铆a al origen los documentos de nuestro repositorio);

- $git pull origin master (me env铆a a mi master local el master remoto);

- $git push origin --tags (se mandan al repositorio remoto los tags);

- $git push origin :refs/tags/nombre_del_tag (fuerza a GitHub a borrar el tag);

- $git push origin nombre_de_la_rama (sube la rama en el repositorio remoto);

- $git clone https://direccion_random (se clona un repositorio remoto);

- $git branch -r (nos muestra las ramas remotas);

________________________________________________________________________

LLAVES 

- $ssh-keygen -t rsa -b 4096 -C "direccion_email" (se genera las llaves p煤blicas y privadas); 

- $eval $(ssh-agent -s)     (verificar que el servidor ssh est茅 encendido, debe sacar Agent y un pid);

- $ssh-add ~/.shh/id_rsa (a帽adir la llave creada);```

Estoy mu agradecido con la comunidad entera de platzi por este magn铆fico curso. Con 茅l he logrado aprender a profundidad el tema de git y github. Muchas gracias!!!

El punto de partida est谩 dado, ahora queda que arranques y vayas por todo 馃殌馃挌
De los mejores cursos que he tomado hasta la fecha! 馃槃
PD: D茅jame tu repo, abajo, as铆 tendr谩s una estrellita en 茅l 馃槈

Varias cosas tras finalizar este curso:

  1. En mi opinion, Freddy es de los mejores profesores que he tenido nunca.
  2. Es mi idolo total, soy Colombiano tambien y admiro todo lo que ha hecho
  3. Me encanta Git y GitHub, aprendi algunas cosas por YouTube y ellos me mostraron lo hermoso de esto.

Gracias por tanto Platzi, hare todo lo posible por seguir por a帽os con mi suscripci贸n!

no seria posible freddy que dieras tu todos los cursos??

Primera vez que tomo un curso online y resulto ser la mejor inversion. Aprendi muchisimo y sobre todo aprend铆 bien. Gracias por todo, freddy Excelente profesor

Dejo un repositorio con los comandos principales vistos en el curso, la info est谩 en el README.md para que lo tengan como referencia en el futuro 馃槃
Comandos Git

Dejo link de todas las notas que tome a lo largo del curso Aqui en GitHub

Ya le hace falta una actualizaci贸n a este curso y hacerlo m谩s profesional.

Para todos los que leen este comentario les deseo suerte en todo lo que esten haciendo 馃槂 馃槂 馃槂 馃槂 馃槂

Llegamos al final!! Enhorabuena a todos.

Felicitaciones a todos lo que llegamos al final del curso, continuemos aprendiendo sobre esta maravillosa herramienta, la red social de los programadores. 馃悎

he visto el curso dos veces, la primera hice todo lo que hacia freddy, la segunda prob茅 todos los comandos da帽ando los archivos, girt reset hard y ya estaba listo para da帽ar otra vez

Aqui les dejo una pagina que hice con estilo de la terminal de bash, dame click 馃槼.
Contiene todos los comandos que vimos aqui en el curso explicados de una forma sencilla 馃槻
y aqui les dejo el link del repositorio en github. ojala les guste y me den una estrellita馃檲

Dejo aqui mis apuntes del curso, espero puedan ayudar a diferentes personas, si hay algun error, me lo hacen saber y asi construir conocimiento, muchas gracias por este curso platzi 鉂わ笍
https://handy-wasp-ee3.notion.site/GIT-PROFESIONAL-99b99f58ff4947478eccb664bbbd5a6c

Mis apuntes del curso los dejo en el repo de Github
https://github.com/julianroa18/hyperblog

隆Hola! les dejo toda una guia de todas las clases de git que fui compilando de todos los comentarios mas interesantes!

https://artistic-locust-699.notion.site/Curso-de-Git-a-y-GitHub-393f9c667f2e4e498f4ea87f0b8fc7f1

Les comparto este repositorio que sirve de gu铆a para el examen final, pues contiene las preguntas que se encuentran en el examen la justificaci贸n y el video del curso donde se habla sobre eso.
Platzi-Test

Hola a todos, aqu铆 les dejo mi resumen del curso. Se enfoca principalmente en los comandos que hemos usado, espero que le sirva a alguien y gracias comunidad son los mejores!!!
https://drive.google.com/file/d/1ufT1RW0DvNMEnjtH0Pf-6SxaAtctqANs/view?usp=sharing

Buen dia compa帽eros, acontinuacion les comparto las notas que tome durante este curso (Presionar Ctrl + Shift + L para el modo oscuro):

https://languid-spring-631.notion.site/Git-y-GitHub-2802033b20744d6d9773504b860c166d

creo que hay un problema con la pregunta de la extension de la llave privada鈥

Oh yeah carnal, llegu茅 al final del curso, siento el poder en mis manos jajaja

Considero que una buena forma de complementar el curso al mismo tiempo de poder repasar/practicar mediante juegos y retos es con este jueguito Oh My Git

Yo lo estoy utilizando para repasar ciertos conceptos y desde mi opini贸n personal esta bastante cool.

Espero les sirva de ayuda.

Muy buen curso Freddy!

Hola,

Les comparto todos mis apuntes en notion del curso de Git y GitHub link he incluido las infograf铆as compartidas en el curso.
Excelente curso he aprendido mucho!
Muchas gracias Freddy y la comunidad de platzinautas.

Este curso fue simplemente HERMOSO! 鉂わ笍

Muchas gracias
Siento que soy cinta blanca en Git y Github, es tooodo un mundo.
No me queda m谩s que practicar para dominarlos 馃槃
Aprend铆 much铆simo, tal vez por aqu铆 me vean en un futuro compartiendo mis experiencias en los comentarios, ya con m谩s dominio del tema 馃槈
#RoadToCode

Hola compa帽eros!
Les comparto un art铆culo bien interesante sobre 5 cosas que no debes hacer con Git, para que las tengan en cuenta.
Lo encuentran Aqu铆
Espero les sirva 馃槂

隆Excelente curso!

Un curso muy practico y adaptado a la demanda real de la industria!

Muchas gracias, no sab铆a bien que era Git y Github; pero me he dado cuenta que es algo incre铆ble. Excelente curso.

Bueno aqui dejare mi repositorio del curso donde tengos mis apuntes y apuntes a帽adidos de parte de otras personas con diferentes perspectivas sobre el uso de git con ciertas funcionalidades.


https://github.com/lskywolfll/Git-y-GitHub


Cualquier Mejorar o tips para hacer un cambio o a帽adir mas comandos es bienvenido 馃槂

Much铆simas gracias por este gran curso. Me tom贸 algo de tiempo finalizarlo, pero, lo importante es entender lo mejor que se pueda y continuar.
Ahora, seguir practicando e implementar esta gran herramienta en todos mis proyectos.

Aprend铆 que a menos que se te rompa el disco duro o se exploten los datacenter de github, tu c贸digo es 99.99 % recuperable鈥!!!

Todo un h茅roe, que manera de ense帽ar y compartir su conocimiento.
Aplausos para usted. 隆隆 Muchas gracias Freddy !!

Por fin , ahora a darle duro a Python.

Wow genial! ahora ya puedo seguir en Frontend, suena interesante DevOps pero se me esta acabando la suscripci贸n as铆 que alg煤n d铆a no se cuando pero alg煤n d铆a sera :鈥)

Excelente curso!! Lo he visto 2 veces 馃榿

Que curso tan apasionante. ME ENCANT脫.

De los mejores profesores, de los mejores cursos.

Creo que este curso ha sido un gran paso en mi desarrollo como desarrollador. vamos por m谩s!

ufff鈥 que nivel鈥 excelente curso, he aprendido mucho y lo que me falta por aprender. Gracias @Freddy.