Leanpub Header

Skip to main content

Aprendiendo Git

¡Domina y comprende Git de una vez por todas!

Git no es complicado... ¡Si lo entiendes! ?

¿Sientes que sabes usarlo porque has memorizado todos los comandos que necesitas? ¡Pero no entiendes qué hace cada cosa y por qué! Así es normal que, cuando exista un problema, te cueste resolverlo.

¡Con este libro vas a entender de una vez por todas todo lo que es Git y cómo sacarle provecho!

Minimum price

$9.99

$14.99

You pay

$14.99

Author earns

$11.99
$

...Or Buy With Credits!

You can get credits monthly with a Reader Membership
PDF
EPUB
WEB
4,661
Readers
327
Pages
About

About

About the Book

Hoy en día es imposible imaginar el desarrollo de software sin Git. Según la encuesta de Stack Overflow de 2018, casi el 90% de los desarrolladores usaban Git para manejar su código fuente. Si te preguntas por qué no hay encuestas más recientes... ¡Es simplemente porque no preguntaron más! Su dominio empezaba a ser tan evidente que no dejaba margen a la curiosidad.

Siendo tan importante entender Git, su manejo y dominio, he decidido escribir este libro. Un libro que yo mismo hubiera estado encantado de leer cuándo empecé. Un libro del que estoy seguro que podrás extraer algún aprendizaje y que te podrá servir de guía en el futuro.

En el libro te explico los orígenes de Git y por qué ahora lo usa todo el mundo. ¿De dónde nació? ¿Quién lo creó? Además, te explico todos sus fundamentos para que entiendas qué es lo que esconden todos los comando que utilizas en tu día a día.

Después de ayudarte a instalar y configurar Git, te explicaré cómo puedes trabajar en Git de forma local y remota y qué diferencias existe entre esos dos modos. Luego haremos repaso de algunas buenas prácticas, cómo usar los alias, los hooks, trucos imprescindibles y muchas cosas más.

¿Te interesa dominar Git? ¿Quieres una guía que te va a acompañar siempre? ¡Este es tu libro!

Share this book

Author

About the Author

Miguel Angel Durán García

Cuento con más de 15 años en el mundo del desarrollo web y sigue siendo una de mis pasiones. ?‍?

Reconocido como Google Developer Expert y GitHub Star. ⭐

Puedes seguir mis directos de programación en https://www.twitch.tv/midudev

Contents

Table of Contents

Introducción

  1. Prólogo
  2. Sobre mí
  3. Requisitos previos
  4. Únete a la comunidad de Discord
  5. Reportando erratas y sugerencias
  6. Agradecimientos

Cambios entre versiones del libro

Un poco de teoría

  1. ¿Qué es un control de versiones y por qué es importante?
  2. ¿Qué es Git?
  3. Los fundamentos de Git
  4. Los tres estados en Git
  5. ¿Qué es una rama?
  6. ¿Qué representa la rama master o la rama main?
  7. ¿Git y GitHub son lo mismo? ¿Qué relación tienen?

Instalando y Configurando Git

  1. ¿Cómo saber si tengo Git instalado en mi sistema?
  2. ¿Cómo instalar Git?
  3. ¿Cómo configuro el nombre y correo usado en Git?
  4. ¿Cómo configurar el editor por defecto que abre Git?
  5. ¿Cómo puedo comprobar mi configuración de Git?
  6. Git y la línea de comandos

Trabajando con Git de forma local

  1. ¿Cómo inicializar un nuevo proyecto Git?
  2. ¿Qué es el directorio de trabajo?
  3. ¿Cómo deshacer un archivo modificado?
  4. ¿Cómo añadimos archivos al área de staging?
  5. ¿Cómo puedo sacar un archivo o varios del área de staging?
  6. ¿Qué es un commit?
  7. ¿Cómo puedo hacer un commit?
  8. Haz commit y sáltate el área de staging
  9. ¿Qué es el HEAD?
  10. ¿Cómo puedo deshacer mis cambios?
  11. ¿Cómo puedo ignorar archivos?
  12. ¿Cómo consigo ignorar siempre los mismos archivos en todos mis repositorios?
  13. ¿Cómo le indico a Git que deje de hacer el seguimiento de un archivo (o varios archivos)?

Ramas en Git

  1. Empezamos con las ramas
  2. Trabajando con ramas
  3. Fusionando ramas
  4. Resolviendo conflictos
  5. Hora de podar: Eliminando ramas

Rebase

  1. ¿Qué es el rebase?
  2. No uses git rebase para esto
  3. Los peligros del rebase

Merge vs Rebase

Trabajando con Git de forma remota

  1. Creando un repositorio remoto en GitHub
  2. Clonando un repositorio remoto ya creado previamente
  3. ¿Cómo enlazar un repositorio local con un repositorio remoto?
  4. Traer los cambios del repositorio remoto a mi repositorio local
  5. Escribiendo en el repositorio remoto
  6. Trabajando con ramas en remoto

Configurando la conexión SSH con GitHub

  1. Cómo generar una llave SSH
  2. Usar una llave SSH
  3. Añadir clave SSH a tu cuenta de GitHub
  4. Probando, probando…

Cómo contribuir a un proyecto de código abierto

  1. ¿Por qué debería contribuir al código abierto?
  2. ¿Cómo empiezo a contribuir a un proyecto de código abierto?
  3. ¿Cómo hago una Pull Request al proyecto original?
  4. ¿Cómo puedo sincronizar mi fork con el repositorio original?
  5. ¿Con qué puedo contribuir a un proyecto?

Flujos de trabajo y estrategias de ramas en Git

  1. Git Flow
  2. GitHub Flow
  3. Trunk Based Development
  4. Ship / Show / Ask
  5. Conclusiones sobre las estrategias de flujos de trabajo en Git

Buenas prácticas al trabajar con Git

  1. ¿Cada cuánto debería hacer un commit?
  2. ¿Cómo puedo escribir un buen mensaje de commit?
  3. ¿Cómo puedo escribir un buen nombre de rama?
  4. ¿Debería alterar el historial de mi proyecto?
  5. No hagas commit de código generado ni configuración particular
  6. ¿Qué debo tener en cuenta para hacer una buena Pull Request?
  7. Cambia tu rama master a main o similares
  8. Firma correctamente tus commit con GPG
  9. ¿Cómo debería revisar una Pull Request?

Hooks de Git

  1. ¿Qué es un hook?
  2. ¿Qué hooks hay disponibles?
  3. ¿Cómo puedo crear mi propio hook?

Alias en Git

  1. ¿Cómo crear tu propio alias en Git?
  2. ¿Puedo crear alias para comandos que ya existen?
  3. ¿Puedo crear un alias para un comando externo?
  4. ¿Cómo puedo listar todos los alias que he creado?
  5. ¿Cuáles son los mejores alias?

Stash, el almacén temporal de cambios

  1. Guarda tus cambios en un stash
  2. Aplicando los cambios del stash
  3. Crea una rama a partir de un stash
  4. Eliminando el almacén temporal

Trucos con Git

  1. ¿Cómo puedo aplicar los cambios de un commit a otro?
  2. Cómo detectar qué commit es el que ha introducido un bug
  3. ¿Quién ha tocado este fichero? ¿Quién ha hecho cambios?
  4. ¿Cómo puedo saber quién añadió una línea por primera vez?
  5. Recupera un archivo en concreto de otra rama o commit
  6. Encuentra el primer commit de un repositorio
  7. Descubre el máximo contribuidor de un repositorio
  8. Recupera todos los commits para un usuario en específico
  9. Clonar un repositorio sin descargar todo el histórico
  10. Vuelve a la rama previa en la que estaba trabajando
  11. Descargar los ficheros de un repositorio remoto sin tener que clonarlo
  12. Aprovecha el auto-corrector de Git para que ejecute comandos parecidos
  13. Domina el formato corto de git status
  14. --porcelain, la opción para que nuestros scripts usen comandos de Git
  15. Configuraciones a tener en cuenta

Errores comunes en Git y sus soluciones

  1. Me dice que no es un repositorio de git
  2. Hago pull y me dice que no es un repositorio
  3. He escrito mal el último commit
  4. He escrito mal la rama que he creado
  5. He hecho un git push y me da error
  6. He hecho commits a la rama principal que debían realizarse en otra rama
  7. xcrun: error: invalid active developer path

GitHub CLI

  1. Instalando gh en el sistema…
  2. Realizando la configuración inicial de gh
  3. Usando gh

Conclusiones del libro

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub