Comandos comunes de flujo de trabajo de teoría de Git

Instalación del entorno y el concepto de Git

1. Descripción general de Git

  • Y el padre de Linux Git Linus Torvalds (Linus Benedic Torvalds) 1969, Finlandia

  • Git es actualmente el sistema de control de versiones distribuido más avanzado del mundo.

  • Git es gratuito y de código abierto

  • Git fue desarrollado originalmente para ayudar al kernel de Linux a reemplazar BitKeeper


2. Configuración del entorno Git

Instalación ambiental:

  • Descargar: https://git-scm.com/ Haga clic en descargar para elegir su propia versión de computadora.

  • Instalación: haga doble clic en Git-2.28.0-64-bit.exe para instalarlo

  • Código fuente de Git: https://github.com/git/git/

  • GUI de Git: TortoiseGit, una herramienta gráfica de terceros para git (tortuga pequeña, se puede distinguir por el color, el archivo se modifica, se envía, etc.), después de la instalación, debe reiniciar la computadora para tener símbolos.

Inserte la descripción de la imagen aquí

Nota: El directorio no puede tener caracteres chinos, espacios, preferiblemente palabras y números. Puede instalar un cliente tortuga TortoiseGit, que es muy sencillo.

Después de la instalación: el botón derecho del mouse tiene opciones de Git y TortoiseGit y la instalación es exitosa

[Error en la transferencia de la imagen del enlace externo. El sitio de origen puede tener un mecanismo de enlace anti-sanguijuela. Se recomienda guardar la imagen y subirla directamente (img-aJCxiN2W-1600085553501) (E: \ Typora File \ image-20200914193201121.png)]

Concepto de control de versiones

1. Copia de seguridad y restauración

  • Copia de seguridad: haga una copia de los datos actuales

  • Restaurar (restaurar): sobrescribe los datos actuales con los datos de la copia anterior (compra en nombre de otros)
    Inserte la descripción de la imagen aquí

2. Comparación: compare la diferencia entre dos datos (compare / diff)

  • Comparación general: comparación de valor hash (herramienta: herramienta de verificación de hash)

      El valor hash es llamar al algoritmo de resumen (md5, sha-1, sha-256, crc. Y otros algoritmos de resumen) para generar un código de característica y usar el código de característica para comparar si los dos archivos son iguales.

       Algoritmo SHA1: comparación de longitud fija (el valor del código hash obtenido es el mismo, el contenido del archivo es el mismo)

  • Comparación detallada: (comparación línea por línea)

       Beyond Compare 4: herramienta de comparación de texto, compare el contenido del texto línea por línea

3. Rama

  Crear una copia "más grande" de todos los datos actuales es hacer múltiples copias de todos los datos actuales, y luego varias personas pueden desarrollar al mismo tiempo.

  • Sin interferencia con la copia original

  • La rama es la misma, los datos actuales predeterminados de la rama principal (rama principal)

  • La importancia de las sucursales: mejorar la eficiencia del equipo

4. Fusión

  Al comparar la diferencia entre los dos datos, los datos objetivo y los datos actuales se combinan para generar nuevos datos. (Fusionar no es sobrescribir. Si agrega a la base original, fusionará y deberá evaluar la misma modificación)

  Aplicación: combine los datos de otras ramas con la rama principal (la rama principal no está desarrollada, generalmente se usa para fusionar, y los datos de desarrollo se agregan a la rama principal).

  Conflicto: dos (copias múltiples) de datos, se modifica la misma posición, no se puede sobrescribir y reemplazar simplemente, se fusionan de acuerdo con la situación real (todos se guardarán para una modificación posterior)


## Centralizado y distribuido

1. Centralizado y distribuido

  • Control de versión local (uso personal, sin colaboración en equipo)

  • Control de versión centralizado (uso del equipo, los datos están en el servidor, no se puede trabajar sin conexión, la operación pasará por la red, continuará escribiendo datos y leyendo datos del servidor, el servidor tendrá mayor presión) -SVN es el representante de un sistema de control de versiones centralizado

  • Control de versiones distribuido (uso del equipo, los datos son locales para cada usuario, pueden trabajar sin conexión, los representantes de Git pueden leer datos del servidor y los usuarios también pueden interactuar con los datos) [Hay almacenes del lado del servidor y almacenes locales-servidor, local Todos los datos] -Git, el sistema de gestión distribuida más avanzado

2. La diferencia entre Git y SVN

  • SVN es el representante de un sistema de control de versiones centralizado

  • Ventajas de Git (ventajas distribuidas): Git es un sistema de control de versiones distribuido , que tiene las ventajas de alta eficiencia (colaboración en equipo), trabajo fuera de línea, baja presión del servidor y fácil fusión.


Proceso de uso de Git

Inserte la descripción de la imagen aquí

  • espacio de trabajo: espacio de trabajo (donde escribe código)

  • Índice: área de almacenamiento temporal (envíe varios asientos de archivos a la biblioteca local a la vez)

  • Repositorio: repositorio local: todos los datos de la versión enviados

  • Remoto: biblioteca remota, un servidor utilizado para alojar código

  (A través del comando add / commt / push / pull anterior, envíe / tome datos del lugar xx al lugar xx)

Flujo de trabajo de Git

  1. Agregue y modifique archivos en el directorio de trabajo;

  2. Coloque los archivos en el área de almacenamiento temporal; git addcomando ( git add.agregue todos los archivos al área de almacenamiento temporal)

  3. Envíe archivos en el área de preparación a la biblioteca local. ( git commit)

  4. Envíe el archivo de la biblioteca local a la biblioteca remota para realizar el alojamiento del servidor. ( git push)

Todos los archivos en el directorio de trabajo se enviarán primero al área de almacenamiento temporal y luego se enviarán a la biblioteca local (vacíe el área de almacenamiento temporal), porque el envío de git solo puede enviar un archivo a la vez, por lo que se colocarán primero en el área de almacenamiento temporal y luego se enviarán a la biblioteca local. Biblioteca. Luego, la biblioteca local se envía a la biblioteca remota

Instrucciones de operación comunes de Git [***]

  1. cdSalte a la ubicación especificada, el separador de archivos en git es ** / **

  2. git init instrucción de inicialización git, después de la inicialización, habrá una carpeta .git en el archivo especificado (es decir, el directorio del sistema git)

  3. Clasificación

  • -Nivel de proyecto local : se utilizan todos los proyectos actuales

  • - Global : uso actual a nivel de usuario

  • -Sistema : nivel de sistema (generalmente no se usa)

    git config --global git config user.name xxxEstablecer nombre de usuario actual

  1. Configurar nombre de usuario y correo electrónico

    git config --global user.name "用户名"

    git config --global user.email "[email protected]"

  2. Git construye un almacén local git clone / git init

  • $ git init Crea una nueva biblioteca de código Git en el directorio actual

  • $ git init [project-name] Cree un nuevo directorio (llamado project-name) e inicialícelo como un bloque de código Git

  • $ git clone [url] Descargar un proyecto y su historial de código completo

  1. comando git add

    Escriba desde el área de trabajo al área de almacenamiento temporal

    $ git add [file1] [file2] Agregue el directorio especificado al área de almacenamiento temporal, incluidos los subdirectorios

    $ git add [dir] Agregue todos los archivos del directorio actual al área de almacenamiento temporal

    $ git add . Haga clic para agregar todos los archivos del directorio actual al área de almacenamiento temporal

    $ git add -p Para varios cambios del mismo archivo, se puede enviar por etapas

  2. comando git view

  • comando git status `

    Muestra el estado del directorio de trabajo y el área de almacenamiento temporal, solo en el archivo

    • git logmando

      Mostrar información del historial del proyecto

    • git log --statmando

      Ver estadísticas de resumen

    • git show sha1 o etiqueta de cabeza

      Ver los cambios en una confirmación específica

    • git diffmando

      Muestra el estado del directorio de trabajo y el área de almacenamiento temporal, hasta el contenido

    • git diff HEADmando

      Muestra el directorio de trabajo y el último estado, hasta el contenido

  1. Comando git commit: envíe archivos en el área de ensayo a la biblioteca local
  • $ git commit -m [message] Envíe los archivos especificados en el área de almacenamiento temporal a la biblioteca local
  1. Fusión de ramas [*** Este es el punto]
  • $ git branch [branch-name] Crea una nueva rama, pero permanece en la rama actual
  • $ git switch [branch-name] Cambiar rama
  • $ git switch master Fusionar otras ramas en la rama maestra actual

Supongo que te gusta

Origin blog.csdn.net/qq_40542534/article/details/108586993
Recomendado
Clasificación