Esta versión de GitHub Enterprise se discontinuó el 2021-09-23. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener un mejor desempeño, más seguridad y nuevas características, actualiza a la última versión de GitHub Enterprise. Para obtener ayuda con la actualización, contacta al soporte de GitHub Enterprise.

Cambiar un mensaje de confirmación

Si un mensaje de confirmación contiene información poco clara, incorrecta o confidencial, puedes modificarlo localmente y subir una nueva confirmación con un nuevo mensaje para GitHub Enterprise Server. También puedes cambiar un mensaje de confirmación para agregar la información faltante.

Volver a escribir el mensaje de confirmación más reciente

Puedes cambiar el mensaje de confirmación más reciente usando el comando git commit --amend.

En Git, el texto del mensaje de confirmación es parte de la confirmación. Cambiar el mensaje de la confirmación cambiará la commit ID-- es decir, el checksum de SHA1 que designa la confirmación. Efectivamente, estás creando una nueva confirmación que reemplaza a la anterior.

La confirmación no se ha subido en línea

Si la confirmación solo existe en tu repositorio local y no se ha subido a tu instancia de GitHub Enterprise Server, puedes modificar el mensaje de confirmación con el comando git commit --amend.

  1. En la línea de comando, desplázate hasta el repositorio que contiene la confirmación que deseas modificar.
  2. Escribe git commit --amend y presiona Enter (Intro).
  3. En tu editor de texto, edita el mensaje de confirmación y guarda la confirmación.

El nuevo mensaje y la confirmación aparecerán en tu instancia de GitHub Enterprise Server la próxima vez que subas un cambio.

Puedes cambiar el editor de texto predeterminado para Git si cambias el parámetro core.editor. Para obtener más información, consulta la sección "Configuración Básica del Cliente" en el manual de Git.

Medificar mensajes de confirmación antiguos o múltiples

Si ya subiste la confirmación a tu instancia de GitHub Enterprise Server, tendrás que subir forzadamente una confirmación con un mensaje modificado.

Desalentamos enfáticamente que se realicen subidas forzadas, dado que esto cambia el historial de tu repositorio. Si haces subidas forzadas, las personas que ya hayan clonado tu repositorio tendrán que arreglar su historial local manualmente. Para obtener más información, consulta la sección "Recuperarse de un rebase ascendente" en el manual de Git.

Cambiar el mensaje de la confirmaciòn subida màs recientemente

  1. Sigue los pasos anteriores para modificar el mensaje de confirmación.
  2. Utilizar el comando push --force-with-lease para hacer una subida forzada sobre la confirmación antigua.
    $ git push --force-with-lease example-branch

Cambiar el mensaje de los mensajes de confirmaciòn mùtilples o del màs antiguo

Si necesitas modificar el mensaje de varias confirmaciones o de una confirmación antigua, puedes utilizar un rebase interactivo y luego hacer una subida forzada para cambiar el historial de la confirmación.

  1. En la línea de comando, desplázate hasta el repositorio que contiene la confirmación que deseas modificar.

  2. Usa el comando git rebase -i HEAD~n para mostrar una lista de las últimas confirmaciones n en tu editor de texto predeterminado.

    # Displays a list of the last 3 commits on the current branch
    $ git rebase -i HEAD~3

    La lista se verá parecida a la siguiente:

    pick e499d89 Delete CNAME
    pick 0c39034 Better README
    pick f7fde4a Change the commit message but push the same commit.
    
    # Rebase 9fdb3bd..f7fde4a sobre 9fdb3bd
    #
    # Comandos:
    # p, escoger = usar confirmación
    # r, volver a redactar = usar confirmación, pero editar el mensaje de confirmación
    # e, editar = usar confirmación, pero detener la modificación
    # s, machacar = usar confirmación, pero fusionarla con la confirmación anterior
    # f, arreglar = como "machacar", pero descartar el mensaje de registro de confirmación
    # x, exec = ejecutar comando (el resto de la línea) usando shell
    #
    # Estas líneas pueden reordenarse, pero se ejecutan desde arriba hacia abajo.
    #
    # Si eliminas una línea aquí ESA CONFIRMACIÓN SE PERDERÁ.
    # Sin embargo, si eliminas todo, la rebase será interrumpida.
    #
    # Note that empty commits are commented out
  3. Reemplaza pick (escoger) por reword (volver a redactar) antes de cada mensaje de confirmación que desees cambiar.

    pick e499d89 Delete CNAME
    reword 0c39034 Better README
    reword f7fde4a Change the commit message but push the same commit.
  4. Guardar y cerrar el archivo con la lista de confirmaciones.

  5. En cada archivo de confirmación resultante, escribe el nuevo mensaje de confirmación, guarda el archivo, y ciérralo.

  6. Cuando estès listo para subir tus cambios a GitHub, utiliza el comando push --force para subir el cambio forzadamente sobre la confirmaciòn antigua.

    $ git push --force example-branch

Para obtener más información sobre el rebase interactivo, consulta la sección "Modo interactivo" en el manual de Git.

Como se mencionó anteriormente, el modificar el mensaje de confirmación dará como resultado una confirmación nueva con una ID nueva. Sin embargo, en este caso, cada confirmación que siga a la confirmación modificada también obtendrá una ID nueva, ya que cada confirmación contiene también la id de su padre.

Si incluiste información sensible en un mensaje de confirmación, el subir dicha confirmación forzadamente con una confirmación modificada no eliminará la confirmación original de GitHub Enterprise Server. La confirmación anterior no será parte del clon siguiente; sin embargo, es posible que siga almacenada en el caché de GitHub Enterprise Server y que se pueda acceder a ella a través de la ID de la confirmación. Debes contactar a el administrador de tu sitio con la ID de confirmación anterior para que la purguen del repositorio remoto.

Leer más