[Java] Java Core 81: Git Tutorial (4) Comparación de diferencias y reversión de versiones



inserte la descripción de la imagen aquí

En Git, puede usar el comando de comparación de diferencias y el comando de reversión de versión para ver las diferencias entre archivos y revertir a una versión anterior.

Aquí hay una breve explicación de estas operaciones:

Comparación de diferencias: puede usar git diffcomandos para comparar las diferencias entre los archivos en su espacio de trabajo y el área de preparación o la versión confirmada. Ejecute el siguiente comando para ver las diferencias de los archivos:

git diff

Esto mostrará las diferencias entre el espacio de trabajo y el área de ensayo. Si desea comparar las diferencias entre su espacio de trabajo y la última versión confirmada, puede agregar parámetros:

git diff HEAD

Este comando mostrará la diferencia entre su espacio de trabajo y HEAD (la última confirmación).

Retroceso de la versión: cuando necesite retroceder a una versión anterior, puede usar el comando git checkouto git resetpara lograrlo.

Utilice git checkoutel comando para restaurar la versión especificada del contenido del archivo en el espacio de trabajo. Ejecute el siguiente comando:

git checkout <commit号> <文件名>

<número de confirmación> es el identificador de la confirmación específica a la que recurrir, que se puede ver a través del comando git log. <filename> es el nombre del archivo que se va a revertir.

Utilice el comando git reset para deshacer un envío determinado y todos los envíos posteriores, y restaurar la base de código a la versión especificada. Ejecute el siguiente comando:

git reset <commit号>

<número de confirmación> es el identificador de la confirmación específica a la que se va a revertir.

Nota: El uso del comando git reset para revertir la versión eliminará el envío revocado y los registros de envío posteriores, y no se podrá restaurar. Se recomienda utilizar este comando en el entorno de desarrollo local para evitar un impacto irreversible en la base de código público.

Nota complementaria: antes de realizar una operación de reversión de versión, se recomienda crear una rama y cambiar a esta rama para preservar el estado estable de la versión actual. Las ramas se pueden crear y cambiar con los siguientes comandos:

git branch <分支名>
git checkout <分支名>

De esta manera, puede realizar operaciones de reversión de versión en la nueva rama sin afectar la rama principal u otro trabajo en curso.


06. Operación local GIT - comparación de diferencias

Objetivo
使用 git diff来比较暂存区、本地库与工作区的内容

contenido

Use el comando vim para editar el archivo readme.txt, agregue la segunda línea de código y use wq para salir

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

  • Comparación del área de ensayo del espacio de trabajo

    命令:git diff readme.txt
    

inserte la descripción de la imagen aquí

  • Comparación de repositorios locales de Workspace

    命令:git diff HEAD readme.txt
    

inserte la descripción de la imagen aquí

  • Comparación de bibliotecas locales en el área de ensayo

    命令:git diff --cached readme.txt
    

inserte la descripción de la imagen aquí

Aquí el caché no es diferente de la biblioteca local, por lo que no hay contenido.

  • Suplemento: puede enviar al área de preparación y al almacén local por segunda vez
resumen
  • Cómo se compara el espacio de trabajo con el área de ensayo

    nombre de archivo git diff

  • Cómo se comparan los espacios de trabajo con las bibliotecas nativas

    nombre de archivo de cabecera de git diff

  • ¿Cómo se compara el área de preparación con la biblioteca local?

    git diff --nombre de archivo en caché


07. Operación local GIT - reversión de versión

Objetivo
掌握 git log、git reflog、git reset 作用
contenido

Cuando enviamos desde el área de preparación al almacén local, encontramos que hay un problema con la versión enviada actual. ¿Cómo podemos hacerlo si queremos volver a la versión especificada?

inserte la descripción de la imagen aquí

Use el comando vim para editar readme.txt, agregue "Soy la tercera línea de código"

inserte la descripción de la imagen aquí

命令:git add readme.txt 提交到暂存区

inserte la descripción de la imagen aquí

命令:git commit -m '第三次提交' 提交到本地仓库

Podemos ver el registro enviado a través del comando de registro de vista proporcionado por git

命令:git log  查看当前提交日志

inserte la descripción de la imagen aquí

Se puede encontrar que hasta el momento, hemos presentado 3 veces en el almacén local, es decir, hay 3 versiones diferentes. Entre ellos, la última versión tiene una marca: HEAD-> master Esta es la ubicación de la versión actual que marca la rama actual, si no se muestra la ubicación actual, puede usar el siguiente comando para verla:

命令:git log --decorate  查看当前提交日志,且显示当前分支的当前版本所在位置

En el registro, delante de cada versión, hay una larga cadena de números aleatorios : b44a10787c2b2bcc7ceb9c39cf06309065518d4b, que es el ID de confirmación de cada envío , que es el valor obtenido a través del algoritmo SHA1. Git usa este ID único para distinguir cada envío.

  • Retroceder a la versión anterior

    命令:git reset --hard HEAD^
    
    回归到上一个版本,Git通过HEAD来判断当前所在的版本位置。那么上一个版本,就用HEAD^标示,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。 
    

inserte la descripción de la imagen aquí

En este momento podemos consultar el log git log

inserte la descripción de la imagen aquí

Encontré que solo hay dos versiones, verifiquemos el contenido del archivo

inserte la descripción de la imagen aquí

  • Volver a la versión especificada

    Primero usamos

    命令: git reflog 查看所有操作
    

inserte la descripción de la imagen aquí

Después de encontrarlo, puede usar el siguiente comando para volver a la versión especificada

命令:git reset --hard 版本号 回退到指定版本

inserte la descripción de la imagen aquí

Estamos de vuelta en el tercer compromiso, y esta vez estamos mirando el archivo

inserte la descripción de la imagen aquí

resumen
  • Cómo ver el registro actual

    git log solo puede ver la operación actual

  • Cómo ver todos los registros de operaciones

    git reflog Ver todos los registros de operaciones

  • Cómo volver a la versión anterior

    git reset --cabeza dura^

  • Cómo revertir a una versión específica

    git reset --número de versión duro




inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/m0_60915009/article/details/131457272
Recomendado
Clasificación