Saltar al contenido
GitTree

Lección 14 · trabajo diario

Etiquetas, anotaciones y nombres de lanzamientos

Cree una v0.1.0 anotada en la confirmación principal inspeccionada y envíe solo esa etiqueta al origen local. Distinga un objeto de etiqueta de una rama, firma y versión alojada.

Progreso guardado en este navegador.

La reproducción carga el vídeo de YouTube (modo de privacidad mejorada).

Narración en inglés · English and Arabic subtítulos

Abre la página del vídeoVer en YouTube

lo que aprenderás

  • Cree una etiqueta comentada con un mensaje deliberado.
  • Verifique el objeto de etiqueta y la confirmación despegada por separado.
  • Inserte una etiqueta explícita sin publicar todas las etiquetas.
  • Mantenga la creación de etiquetas distinta de una versión alojada.

Antes de empezar

Comience donde terminó la lección 13: principal/H7 limpio, servidor principal H7, función publicada en F1; no existe ninguna etiqueta v0.1.0. La firma de etiquetas de demostración local no se solicita explícitamente.

El vídeo se grabó con Git 2.52.0 y GitTree 2.0 en Ubuntu 24.04: la etiqueta se creó y se insertó en la aplicación; el estado anterior, el nombre duplicado rechazado y las comprobaciones realizadas en la terminal. No se ejecutó nada en macOS o Windows, y Ubuntu es el único sistema Linux registrado. El nivel mínimo de Git de origen de GitTree es 2.39.0.

GitTree te pide que inicies sesión; El plan gratuito cubre cada paso aquí. No se necesita cuenta de proveedor, Pro/trial, credencial API o servicio de Internet. Un origen desnudo local no es GitLab o CI. Todas las identidades utilizan example.com; nunca ejecute esta lección dentro de un proceso de pago de código fuente.

Realice mutaciones a través de GitTree o la ruta nativa en entradas idénticas, no ambas consecutivamente. La verificación de solo lectura puede seguir a cualquiera de los dos. Cualquier preparación descrita como trabajo terminal se etiqueta como preparación nativa, nunca como característica inventada de una aplicación.

Efectos de concepto y estado.

Una rama normalmente avanza con confirmaciones; una etiqueta de lanzamiento es un nombre deliberadamente estable. Una etiqueta ligera nombra un objeto directamente; una etiqueta anotada agrega su propio objeto de etiqueta, etiquetador y mensaje.

v0.1.0 nombra aquí un objeto de etiqueta. v0.1.0^{} lo lleva a la confirmación. Se esperan ID de objeto diferentes para esas dos capas y no indican dos versiones.

La anotación no es una firma criptográfica. Publicar una etiqueta Git no es crear notas de la versión del proveedor, cargar activos ni distribuir una versión de escritorio. Ninguna de esas acciones externas se realiza aquí.

Crear agrega refs/tags/v0.1.0 más un objeto de etiqueta; push agrega esa etiqueta de servidor seleccionada. HEAD, sucursales locales, índice y archivos de trabajo no se mueven.

Prepare el estado exacto del proyecto

Utilice el archivo principal original después de la lección 13. Inspeccione el H7 SHA real y verifique que no haya etiqueta antes de crearlo. No agregue una confirmación de cuaderno después de etiquetar.

En GitTree

Paleta: Comando+Mayús+P (Ctrl+Mayús+P en Ubuntu); escriba el comando con nombre exacto y selecciónelo. Las acciones de referencia con nombre usan el menú contextual de esa fila, no un acceso directo de paleta sin argumentos.

  1. Seleccione la fila del gráfico principal/H7 real (documentos: agregue el recordatorio de revisión de Leo); confirme su cambio de pie de página y su identidad, luego haga clic derecho en él.
  2. Abra Tag Here y elija Create Annotated Tag Here… (el menú de la fila también muestra un Create Tag Here… simple, que crea una etiqueta liviana). El cuadro de diálogo se titula "Crear una etiqueta anotada en" la identificación corta de la confirmación.
  3. Establezca el nombre de la etiqueta v0.1.0 y el primer mensaje utilizable GitTree Características del punto de control del curso.
  4. En Signing las opciones son Seguir la configuración de Git, Firmar esta etiqueta y Don’t sign this tag; el cuadro de diálogo señala que la configuración de Git no firma etiquetas (tag.gpgSign no está configurado). Seleccione No firmar esta etiqueta para esta lección explícita sin firmar; no cambie la configuración de firma global.
  5. Haga clic en Crear etiqueta una vez y espere; confirm v0.1.0 etiqueta la confirmación prevista sin cambiar el pago.
  6. En el grupo Tags del panel lateral, haga clic derecho en v0.1.0 → Push Tag (el mismo menú también ofrece Eliminar etiqueta... y Eliminar etiqueta del control remoto..., que esta lección no utiliza). El aviso dice "Etiqueta enviada v0.1.0".
  7. Verifique el tipo de objeto de etiqueta nativa, el mensaje y la confirmación despegada más la identidad de la etiqueta del servidor; No confunda anotación con firma.
  8. Deje principal limpio y la etiqueta sin cambios. No utilice Push All Tags ni cree una autorización de proveedor.

Para cada confirmación ordinaria: el resumen es el tema indicado; Descripción vacía; Modificar la confirmación anterior, omitir enlaces, agregar firmada por otro autor, presionar después de la confirmación y permitir la confirmación vacía; sin coautores. Prepare solo los archivos nombrados, luego confirme los cambios en N archivos una vez (Archivo para uno), o Comando+Entrar como alternativa. Espere el resultado real. Una lección que modifica explícitamente cambia sólo esa opción indicada.

en la terminal

Equivalente nativo en clean main:

Command · bash
git tag --annotate --no-sign v0.1.0 --message "First usable GitTree Features course checkpoint"
git cat-file -t v0.1.0
git for-each-ref --format='%(contents:subject)' refs/tags/v0.1.0
git rev-parse 'v0.1.0^{}'
git push --quiet origin refs/tags/v0.1.0
git ls-remote --tags origin refs/tags/v0.1.0 'refs/tags/v0.1.0^{}'
git status --short

--annotate tiene la forma corta -a (git tag -a v0.1.0 -m "message") y --message es -m; De cualquier manera, Git almacena un objeto de etiqueta con su propio mensaje, a diferencia del ligero git tag v0.1.0.

Crear/empujar con éxito; tipo y salida de mensaje:

Salida
tag
First usable GitTree Features course checkpoint

El SHA pelado equivale al principal real. ls-remote devuelve los ID reales del objeto de etiqueta y de confirmación pelada; registre estos valores de variables, no etiquetas de modelos. El estado final está vacío. Intento separado de nombre duplicado:

Command · bash
git tag v0.1.0

Stderr real, salida 128:

Salida
fatal: tag 'v0.1.0' already exists

La etiqueta original permanece; nunca use -f para ocultar la colisión.

Resultado

Where you end: La versión 0.1.0 anotada existe localmente y en el origen básico local, mensaje Primero utilizable GitTree Incluye punto de control del curso, confirmación H7 despejada. Principal/HEAD/index/trabajo sin cambios; no se reclama ninguna autorización ni firma alojada.

Errores comunes

  • Llamar a una etiqueta anotada firmada.
  • Etiquetar la fila antigua seleccionada en lugar de la principal.
  • Empujar cada etiqueta local sin querer.

Si algo sale mal

Cancele una creación incorrecta antes de confirmar. Si una etiqueta local es incorrecta, inspeccione su destino real y si se publicó antes de cualquier eliminación explícita; El rechazo de duplicados nativos conserva la referencia existente.

Comprueba tu comprensión

Responda cada pregunta y luego lea por qué. Las preguntas marcadas como "Obligatorias" cuentan para completar la lección.

  1. Pregunta 1 de 6

    ¿Qué es v0.1.0 aquí?

    Elija una respuesta.

  2. Pregunta 2 de 6

    ¿Qué afirmaciones están justificadas?

    Elija cada respuesta que corresponda.

  3. Pregunta 3 de 6
    Requerido

    ¿El etiquetado crea otra confirmación principal?

    Elija una respuesta.

  4. Pregunta 4 de 6
    Requerido

    Reutilizar el mismo nombre sin forzar: ¿resultado?

    Elija una respuesta.

  5. Pregunta 5 de 6

    La etiqueta y los ID principales difieren: ¿corruptos?

    Elija una respuesta.

  6. Pregunta 6 de 6
    Requerido

    ¿Qué prueba el resultado?

    Elija cada respuesta que corresponda.

0 de 6 correcto

Responda correctamente las preguntas requeridas para completar la lección.

Comprobado en este navegador.

Practica

Verifique la etiqueta de tipo de objeto, la anotación exacta, el SHA=principal despegado y ambas capas de etiquetas del servidor. Prediga el rechazo de duplicados conservando la primera etiqueta y el trabajo limpio.

Su propia confirmación: el sitio no puede ver su computadora.

Para completar la lección, responde correctamente a las preguntas requeridas y confirma el ejercicio práctico.

Resumen

  • La anotación agrega un objeto de etiqueta.
  • Empuje solo la etiqueta elegida.
  • Las etiquetas de Git y las versiones alojadas difieren.

Términos del glosario introducidos

Etiqueta anotada — وسم مشروح; etiqueta ligera — وسم خفيف; etiquetador — منشئ الوسم; confirmación pelada - الإيداع المحسوم.

Transcripción del vídeo

La narración del vídeo, cue a cue.

Mostrar la transcripción
  1. Comience desde el punto de control exacto.
  2. Nombra la sucursal, índice y versión funcional.
  3. Prepare sólo la copia aislada del curso.
  4. Elija la confirmación exacta antes de etiquetar.
  5. Cree una etiqueta anotada en esa confirmación.
  6. Escriba el nombre y una anotación significativa.
  7. La anotación no significa firma criptográfica.
  8. Una etiqueta no cambia de sucursal.
  9. Empuje solo la etiqueta nombrada.
  10. Retire la etiqueta para verificar su confirmación.
  11. No invente una versión alojada.
  12. ¿Qué es v0.1.0 aquí?
  13. El tipo de objeto verificado es etiqueta y se pela a principal.
  14. ¿Qué afirmaciones están justificadas?
  15. La anotación sin firmar añade metadatos pero no mueve HEAD.
  16. ¿El etiquetado crea otra confirmación principal?
  17. La etiqueta ref/objeto apunta a un compromiso existente.
  18. Reutilizar el mismo nombre sin forzar: ¿resultado?
  19. El intento de duplicación medido salió de 128 y conservó la etiqueta.
  20. La etiqueta y los ID principales difieren: ¿corruptos?
  21. El propio objeto de una etiqueta anotada difiere de su objetivo de compromiso.
  22. ¿Qué prueba el resultado?
  23. Leer ambas capas de objetos y la referencia real del servidor elegido.
  24. Verifique el resultado real, no sólo un mensaje.
  25. Predecir la entrada modificada antes de actuar.
  26. Preservar el trabajo útil antes de la recuperación.
  27. Pruebe el punto de control antes de continuar.
  28. Mantener el resultado verificado para el siguiente paso.