python compara dos archivos

El comando git diff muestra las diferencias entre los archivos en dos confirmaciones o entre su repositorio actual y una confirmaciòn anterior. Este comando muestra los cambios indicados por encabezados y metadatos para los archivos que han cambiado.

Cuando esté trabajando con el sistema de control de versiones de Git, es posible que desee comparar los datos de su repositorio con otros fuente de datos. Por ejemplo, es posible que desee comparar dos confirmaciones diferentes entre sì, o dos archivos.

Ahì es donde entra en juego la funciòn diff. Diffing es una funciòn que acepta dos entradas y presenta los cambios que existen. entre esas fuentes de datos. Las funciones de diferencia se pueden ejecutar en ramas, archivos y confirmaciones.

Este tutorial discutirá, con ejemplos, los conceptos básicos de diferenciar con Git y còmo usar el comando git diff. Al final de la lectura de este tutorial, serás un experto en el uso del comando git diff.

Comando Git Diff

El comando git diff muestra las diferencias entre archivos en dos confirmaciones o entre una confirmaciòn y su repositorio actual. Puede ver qué texto se ha agregado, eliminado y cambiado en un archivo.

Aquì está la sintaxis del comando git diff:

Por defecto, el comando git diff muestra cualquier cambio no confirmado en su repositorio.

Podemos ver las lìneas eliminadas de nuestro archivo original, asì como cualquier lìnea agregada o modificada en nuestro archivo original. A menudo, Git diff se utiliza para comparar ramas en un repositorio de Git.

El 81% de los participantes afirmaron que se sentìan más seguros acerca de sus perspectivas laborales después de asistir a un bootcamp. Asigne a un bootcamp hoy mismo.

El graduado promedio de bootcamp pasò menos de seis meses en la transiciòn de carrera, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Puede comparar archivos entre dos confirmaciones de Git especificando el nombre de la referencia que hace referencia a las confirmaciones que desea comparar. Una referencia puede ser un ID de confirmaciòn o HEAD, que se refiere a la rama actual.

Comparemos dos confirmaciones en nuestro repositorio de Git.

Para hacerlo, primero debe recuperar el ID de las confirmaciones cuyos archivos quiero comparar. Puede realizar esta tarea usando el comando git log & ndash; pretty = oneline, que devuelve un breve resumen de todas las confirmaciones en un repositorio:

Este comando devuelve:

Diferencia entre ramas de Git

Para comparar dos ramas de Git con el comando diff, especifique las dos ramas que desea comparar como argumentos. Debe usar dos puntos entre el nombre de cada rama. Estos puntos indican que desea leer la √∫ltima confirmaciòn en cada una de las ramas y compararlas:

Supongamos que querìamos comparar la rama " master " con una rama llamada " dev-v0.9 " en nuestro repositorio. Podrìamos hacerlo usando este comando:

Cuando se ejecuta este comando, se ejecutará una diferencia entre el " master " y " dev-v0.9 " ramas en nuestro còdigo base.

De manera similar, puede comparar archivos especìficos en dos ramas diferentes. por lo tanto, puede usar la misma sintaxis anterior y, además, especificar el archivo que desea comparar.

Suponga que quisiéramos comparar el archivo README.md con nuestro archivo " master " y " dev-v0.9 " sucursales. Podrìamos hacerlo usando este còdigo:

Esto comparará el archivo README.md (que está en nuestro directorio actual, indicado por la sintaxis " ./") con el archivo " master " y " dev-v0.9 " ramas.

Ejemplo de comando Git Diff

Supongamos que hemos inicializado un repositorio en blanco y queremos iniciar nuestro repositorio con un archivo README.md. Hemos creado un archivo README.md en nuestro repositorio que contiene la siguiente oraciòn:

Este es un ejemplo de la funciòn Git diff.

Preparar archivos y confirmaciones

Vamos a crear una confirmaciòn con este archivo usando el comando git commit:

Esto nos permite guardar los cambios que hemos realizado en nuestro repositorio. El comando git devuelve:

Si ejecutamos el comando git diff en esta etapa, no sucederá nada. Esto se debe a que nuestro repositorio se ha inicializado y no hay cambios entre los archivos de nuestro repositorio. Ahora que tenemos un repositorio básico, podemos cambiar el contenido de los archivos en nuestro repositorio. Esto nos permitirá ver el comando git diff en acciòn.

Supongamos que queremos agregar la oraciòn " Acabamos de agregar esta lìnea a nuestro archivo. & Rdquo; al archivo README.md. Podrìamos hacerlo usando este comando:

"Career Karma entrò en mi vida cuando más lo necesitaba y rápidamente me ayudò a combinar con un bootcamp. Dos meses después de graduarme, encontré el trabajo de mis sue√±os que se alineaba con mis valores. ¬°y metas en la vida! "

Venus, ingeniero de software en Rockbot

El comando anterior agrega nuestra oraciòn al archivo README.md.

Esto significa que ahora hay una diferencia entre nuestro archivo README.md inicial y el archivo README.md actual en nuestro repositorio.

Al ejecutar el comando git diff, podemos ver las diferencias entre estos dos archivos. De forma predeterminada, el comando git diff produce una diferencia para todos los archivos entre la √∫ltima confirmaciòn y el estado actual del repositorio.

Ejecutar una diferencia de Git entre confirmaciones

Cuando ejecutamos el comando, se devuelve la siguiente respuesta:

Este es un ejemplo de la funciòn Git diff.

Este es un resultado tìpico del comando git diff. Nuestro resultado muestra lo que se ha agregado o eliminado en nuestro archivo en un formato diff combinado.

El comando git diff devuelve una lista de todos los cambios en todos los archivos entre nuestra √∫ltima confirmaciòn y nuestro repositorio actual.

Si quieres recuperar los cambios realizados en un archivo especìfico en un repositorio, puede especificar ese archivo como un tercer parámetro. Suponga que solo queremos ver los cambios realizados en el archivo README.md.

En este ejemplo, solo hemos cambiado el archivo README.md, por lo que solo esos cambios se mostrarìan de todos modos. Pero si estuviéramos trabajando con un repositorio más grande, es posible que deseemos comparar solo los cambios en un archivo. Para hacerlo, podrìamos usar este comando:

Este comando nos permite comparar nuestra versiòn actual del archivo README.md con la √∫ltima versiòn enviada a nuestro repositorio.

Git Diff Breakdown

Git diffs presenta un n√∫mero de componentes que podemos utilizar para analizar los cambios entre un archivo en un repositorio. Vamos a desglosarlos, con referencia a nuestro ejemplo anterior.

Archivos de entrada

El primer componente de nuestro diff son los archivos de entrada . Esta parte del diff nos dice qué archivos se están comparando en el diff.

Estamos comparando el archivo README.md en la versiòn actual de nuestro còdigo con el archivo README.md en la √∫ltima versiòn de nuestro còdigo. Esto se indica en la primera lìnea de nuestro còdigo:

Metadatos

A continuaciòn, nuestro diff contiene los metadatos para nuestro repositorio de Git. Estos metadatos muestran las etiquetas de la versiòn del objeto que utiliza Git para realizar un seguimiento de los cambios que ha realizado en un archivo.

Esta informaciòn rara vez se usa en la mayorìa de los casos del comando diff. En nuestro ejemplo anterior, los metadatos se ven asì:

Cambiar marcadores

La siguiente parte de la salida Git diff es marcadores de cambio . Estos marcadores de patròn de archivo nos dicen qué tipo de cambios se han realizado en nuestros archivos. Los marcadores de cambio para nuestro ejemplo anterior son:

Estos marcadores nos dicen que los cambios de a / README.md (indicados por los signos menos), que se reflejan en b / README.md (indicados por los signos más).

Cambios en el còdigo

Finalmente, nuestro diff devuelve un lista de cambios realizados en nuestro còdigo . A diferencia de una comparaciòn de archivos completa, las diferencias solo muestran las secciones de un archivo que se han modificado. En nuestro ejemplo, agregamos una lìnea a nuestro archivo, que arrojò el siguiente resultado:

La primera lìnea es un resumen de los cambios realizados en nuestro archivo. Esto nos dice que hemos agregado una lìnea de còdigo a nuestro archivo (+1) comenzando en la segunda lìnea (2).

Luego, se nos muestra una lista de los cambios realizados. Como puede ver, debido a que agregamos la lìnea " Acabamos de agregar esta lìnea a nuestro archivo. & Rdquo ;, esa lìnea aparece en nuestro diff. El signo más nos dice que agregamos esa lìnea al archivo.

Conclusiòn

La diferenciaciòn es una funciòn √∫til en Git que le permite comparar dos archivos, ramas o confirmaciones en una Repositorio de Git. Esto le permite ver qué cambios se han realizado desde cierto punto en su repositorio.

Este tutorial discutiò los conceptos básicos de diferenciar con Git y còmo usar el comando git diff para realizar una operaciòn de diferenciaciòn. ¬°Ahora está equipado con el conocimiento que necesita para comenzar a usar el comando git diff como un experto!

Para obtener más recursos de aprendizaje sobre Git, consulte nuestro Guìa de còmo aprender Git .