Git patch — Aplicando parches con estilo (No copy/paste)

Icons made by Freepik and Smashicons from Flaticon

Llevo varios años utilizando Git y no tenía ni idea de que esto se podía hacer, pero la necesidad me llevo a encontrar la solución ojeando un poco en las opciones del Sourcetree (un cliente Git muy popular en Mac OS) y con una rápida búsqueda en internet. Así que voy a contarles por que llegué a necesitar del git patch…

Hace un par de días le estaba ayudando a uno de mis compañeros de equipo a implementar una solución para una de sus tareas del sprint. Cuando terminé la implementación que quería sugerirle, necesitaba pasarle los cambios para que él los revisara e hiciera las respectivas pruebas. Lo primero que pensé fue en pasarle cada línea de código que cambié y decirle donde la ponía ya que no eran muchos cambios; lo segundo fue hacer un commit sobre su branch para que él bajara los cambios, pero esa no era mi tarea así que no me pareció pertinente. Así que me puse a revisar en las opciones del Sourcetree y vi algo que decía “Create Patch” y al explorarlo un poco noté que era lo que necesitaba y me pareció genial!

Te dejo un par de capturas de pantalla de como es la creación de un patch desde Sourcetree:

Opciones para crear y aplicar patch. Tomado de Sourcetree
Crear un patch a partir de la copia de trabajo actual. Tomado de Sourcetree

Pero cómo lo puedo usar en la terminal??

Esta misma pregunta me la hice rápidamente, ya que mi compañero utiliza Linux y Sourcetree solo está para Mac OS. Una búsqueda rápida en San Google me dio la respuesta y es súper fácil de utilizar en su forma más básica:

  • Generar un archivo con todos los cambios de la copia de trabajo actual:
> git diff > changes.patch
  • Aplicar un archivo patch sobre una copia de trabajo:
> git apply changes.patch

Lo que te he explicado aquí es el uso más básico de git patch, pero hay una gran cantidad de configuraciones y diferentes usos que se le puede dar. Por eso a continuación te dejo enlaces a la documentación oficial:

Espero te sea de mucha utilidad… Si te ha gustado este post, recomiendalo 👏, comenta y comparte!

--

--

--

Senior Software Engineer at Patagonian, Co-founder at Mobile Lab, Co-founder at La Manicurista, Ex CTO at La Manicurista, Organizer at GDG Cali

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Carlos Fernando Arboleda Garcés

Carlos Fernando Arboleda Garcés

Senior Software Engineer at Patagonian, Co-founder at Mobile Lab, Co-founder at La Manicurista, Ex CTO at La Manicurista, Organizer at GDG Cali

More from Medium

Git Flow — Helpful and Simple

Python Programs for Beginner Bioinformatics — Part 2

9 Reasons To Go With Java Web Development Services!

Salesforce to ZeroBounce Integration