Aprendiendo Git
$9.99
Precio mínimo
$14.99
Precio sugerido

Aprendiendo Git

¡Domina y comprende Git de una vez por todas!

Sobre este libro

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!

Sobre el autor

Miguel Angel Durán García
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

Testimonios de lectores

Ivan L'olivier
Ivan L'olivier

Senior FullStack Software Engineer

Uso git desde el 2015 e igual aprendí varias cosas. Recomiendo totalmente el libro para aprender desde cero o para programadores experimentados. Además es fácil de leer (no da muchas vueltas para decir algo). Y git no es algo que cambie mucho, así que el libro va a ser relevante por un buen tiempo. Buen libro para tener en tu biblioteca geek :)

David Huertas
David Huertas

Junior FrontEnd Developer

Aprendiendo Git ha sido una forma clara y concisa de entender y ampliar conceptos de Git que ahora uso diariamente en el trabajo, me ha ayudado ha empezar en el sector y creo que puede ser útil para todo el mundo.

Facundo Capua
Facundo Capua

Lead Magento & DevOps Engineer at The Etailers

Utilizo git a diario desde hace más de 10 años y sin dudarlo puedo decir que la forma en la que Midu ha encarado este libro ataca los puntos más importantes para gente de cualquier nivel. Creo que cualquier persona (sin importar su seniority) puede sacar provecho de este pedazo de libro.

Mateo Álvarez
Mateo Álvarez

Frontend Developer

Es un libro del que te sentís orgulloso de leer, tiene lo mejor de la documentación (amplitud y detalle), pero también tiene lo mejor de un tutorial (entretenido y muy llevadero). Lo mejor que tiene es que en cada sección que lees, aprendes muchísimo y terminas entendiendo en profundidad los comandos que usas en tu día a día. Es muy útil para personas que recién están aprendiendo, como para los que controlan del tema! Además de todos los trucos y ejemplos que tiene, lo recomiendo mucho!

Néstor López
Néstor López

Frontend Engineer

Quizá uno de los mejores libros relacionados con Git que he leído. Fácil de leer, fácil de entender y lleno de detalles que harán que comprendas realmente el manejo y la productividad que te proporciona Git.

Tabla de contenidos

  • Introducción
    • Prólogo
    • Sobre mí
    • Requisitos previos
    • Únete a la comunidad de Discord
    • Reportando erratas y sugerencias
    • Agradecimientos
  • Cambios entre versiones del libro
  • Un poco de teoría
    • ¿Qué es un control de versiones y por qué es importante?
    • ¿Qué es Git?
    • Los fundamentos de Git
    • Los tres estados en Git
    • ¿Qué es una rama?
    • ¿Qué representa la rama master o la rama main?
    • ¿Git y GitHub son lo mismo? ¿Qué relación tienen?
  • Instalando y Configurando Git
    • ¿Cómo saber si tengo Git instalado en mi sistema?
    • ¿Cómo instalar Git?
    • ¿Cómo configuro el nombre y correo usado en Git?
    • ¿Cómo configurar el editor por defecto que abre Git?
    • ¿Cómo puedo comprobar mi configuración de Git?
    • Git y la línea de comandos
  • Trabajando con Git de forma local
    • ¿Cómo inicializar un nuevo proyecto Git?
    • ¿Qué es el directorio de trabajo?
    • ¿Cómo deshacer un archivo modificado?
    • ¿Cómo añadimos archivos al área de staging?
    • ¿Cómo puedo sacar un archivo o varios del área de staging?
    • ¿Qué es un commit?
    • ¿Cómo puedo hacer un commit?
    • Haz commit y sáltate el área de staging
    • ¿Qué es el HEAD?
    • ¿Cómo puedo deshacer mis cambios?
    • ¿Cómo puedo ignorar archivos?
    • ¿Cómo consigo ignorar siempre los mismos archivos en todos mis repositorios?
    • ¿Cómo le indico a Git que deje de hacer el seguimiento de un archivo (o varios archivos)?
  • Ramas en Git
    • Empezamos con las ramas
    • Trabajando con ramas
    • Fusionando ramas
    • Resolviendo conflictos
    • Hora de podar: Eliminando ramas
  • Rebase
    • ¿Qué es el rebase?
    • No uses git rebase para esto
    • Los peligros del rebase
  • Merge vs Rebase
  • Trabajando con Git de forma remota
    • Creando un repositorio remoto en GitHub
    • Clonando un repositorio remoto ya creado previamente
    • ¿Cómo enlazar un repositorio local con un repositorio remoto?
    • Traer los cambios del repositorio remoto a mi repositorio local
    • Escribiendo en el repositorio remoto
    • Trabajando con ramas en remoto
  • Configurando la conexión SSH con GitHub
    • Cómo generar una llave SSH
    • Usar una llave SSH
    • Añadir clave SSH a tu cuenta de GitHub
    • Probando, probando…
  • Cómo contribuir a un proyecto de código abierto
    • ¿Por qué debería contribuir al código abierto?
    • ¿Cómo empiezo a contribuir a un proyecto de código abierto?
    • ¿Cómo hago una Pull Request al proyecto original?
    • ¿Cómo puedo sincronizar mi fork con el repositorio original?
    • ¿Con qué puedo contribuir a un proyecto?
  • Flujos de trabajo y estrategias de ramas en Git
    • Git Flow
    • GitHub Flow
    • Trunk Based Development
    • Ship / Show / Ask
    • Conclusiones sobre las estrategias de flujos de trabajo en Git
  • Buenas prácticas al trabajar con Git
    • ¿Cada cuánto debería hacer un commit?
    • ¿Cómo puedo escribir un buen mensaje de commit?
    • ¿Cómo puedo escribir un buen nombre de rama?
    • ¿Debería alterar el historial de mi proyecto?
    • No hagas commit de código generado ni configuración particular
    • ¿Qué debo tener en cuenta para hacer una buena Pull Request?
    • Cambia tu rama master a main o similares
    • Firma correctamente tus commit con GPG
    • ¿Cómo debería revisar una Pull Request?
  • Hooks de Git
    • ¿Qué es un hook?
    • ¿Qué hooks hay disponibles?
    • ¿Cómo puedo crear mi propio hook?
  • Alias en Git
    • ¿Cómo crear tu propio alias en Git?
    • ¿Puedo crear alias para comandos que ya existen?
    • ¿Puedo crear un alias para un comando externo?
    • ¿Cómo puedo listar todos los alias que he creado?
    • ¿Cuáles son los mejores alias?
  • Stash, el almacén temporal de cambios
    • Guarda tus cambios en un stash
    • Aplicando los cambios del stash
    • Crea una rama a partir de un stash
    • Eliminando el almacén temporal
  • Trucos con Git
    • ¿Cómo puedo aplicar los cambios de un commit a otro?
    • Cómo detectar qué commit es el que ha introducido un bug
    • ¿Quién ha tocado este fichero? ¿Quién ha hecho cambios?
    • ¿Cómo puedo saber quién añadió una línea por primera vez?
    • Recupera un archivo en concreto de otra rama o commit
    • Encuentra el primer commit de un repositorio
    • Descubre el máximo contribuidor de un repositorio
    • Recupera todos los commits para un usuario en específico
    • Clonar un repositorio sin descargar todo el histórico
    • Vuelve a la rama previa en la que estaba trabajando
    • Descargar los ficheros de un repositorio remoto sin tener que clonarlo
    • Aprovecha el auto-corrector de Git para que ejecute comandos parecidos
    • Domina el formato corto de git status
    • --porcelain, la opción para que nuestros scripts usen comandos de Git
    • Configuraciones a tener en cuenta
  • Errores comunes en Git y sus soluciones
    • Me dice que no es un repositorio de git
    • Hago pull y me dice que no es un repositorio
    • He escrito mal el último commit
    • He escrito mal la rama que he creado
    • He hecho un git push y me da error
    • He hecho commits a la rama principal que debían realizarse en otra rama
    • xcrun: error: invalid active developer path
  • GitHub CLI
    • Instalando gh en el sistema…
    • Realizando la configuración inicial de gh
    • Usando gh
  • Conclusiones del libro

Leanpub incondicional, sin riesgo, 100% de felicidad garantizada

Durante los primeros 60 días de compra, puedes obtener un reembolso del 100% de cualquier compra Leanpub, en dos clics. Procesamos las restituciones manualmente, así que puede tomarse unos días en aparecer. Véase términos completos.

80% de regalías. Gana $16 en un libro de $20.

Pagamos 80% de regalías. No es un error tipográfico: ganas $16 en una venta de $20. Si vendemos 5000 copias no reembolsadas de tu libro o curso por $20, ganarás $80,000.

(Sí, algunos autores ya han ganado mucho más que eso en Leanpub.)

De hecho, los autores han ganadomás de $12 millonesescribiendo, publicando y vendiendo en Leanpub.

Aprende más sobre cómo escribir en Leanpub

Actualizaciones gratis. Libre de DRM.

¡Si compras un libro Leanpub obtienes actualizaciones gratis siempre y cuando el autor actualice el libro! Varios autores usan Leanpub para publicar sus libros en progreso mientras los escriben. Todos los lectores obtienen actualizaciones gratis, independientemente de cuándo compraron el libro o cuánto pagaron (incluyendo si fue gratis).

La mayoría de los libros Leanpub se encuentran disponibles en PDF (para computadores) y EPUB (para teléfonos, tabletas, y Kindle). Los formatos que un libro incluye se muestran en la esquina superior derecha de esta página.

Finalmente, los libros Leanpub no tienen ninguna de las cosas sin sentido sobre protección de copia DRM, así que puedes leerlos fácilmente en cualquier dispositivo que se soporta.

Aprende más sobre los formatos de Leanpub y dónde puedes leerlos

Escribir y publicar en Leanpub

Los autores y editores usan Leanpub para publicar libros electrónicos sorprendentes en curso y completados, como éste. ¡También puedes utilizar Leanpub para escribir, publicar y vender tu libro! Leanpub es una potente plataforma para autores serios, que combina un flujo de trabajo de escritura y publicación simple y elegante con una tienda centrada en la venta de libros electrónicos en progreso. Leanpub es una máquina de escribir mágica para los autores: basta con escribir en texto plano, y para publicar tu libro electrónico, simplemente haz clic en un botón. Realmente es así de fácil.

Más información sobre cómo escribir en Leanpub