Cómo fusionar archivos sin confirmación automática en Git

aplicaciones

Git es uno de los sistemas más comunes en la programación moderna. Casi todas las empresas que desarrollan y venden software profesional lo utilizan porque facilita el seguimiento de los cambios de código.

Al usar Git, simplemente no puede ignorar los comandos Git Merge y Commit. Git Merge te permite adjuntar el código en el que has estado trabajando a toda la rama. Esto suele ir seguido del comando Validar para guardar los cambios.

Pero, ¿puede utilizar Merge sin el comando Commit? Este artículo te dará la respuesta.

Si desea seguir este tutorial, debe tener al menos algunos conocimientos de programación y estar familiarizado con los conceptos básicos de Git.

Ante todo

Antes de pasar a la parte principal del artículo, aclaremos los conceptos clave que necesitamos para este tutorial. Comenzaremos con Git Merge.

Git Merge es un comando que une dos o más historiales de desarrollo. En otras palabras, este comando incorpora cambios de nuevas confirmaciones en la rama que ya está almacenada en su repositorio de Git.

La sintaxis básica que puede usar para este comando se ve así:

git merge [-n] [–stat] [–no-commit] [–squash]

[-s] [-X]

[- [no-] rerere-autoupdate] [-m]…

git fusionar HEAD…

git merge –abort

El comando Git Merge se usa principalmente a través de Git Pull, que es otro comando de Git que incorpora cambios de un repositorio diferente. Puede ejecutar el comando manualmente cuando necesite combinar cambios de una rama a otra.

La sintaxis básica que se usa principalmente para este comando se ve así:

git commit -m // establece un mensaje de confirmación

git commit -a // incluye todos los archivos modificados en la confirmación actual

git commit –amend // reescribe la última confirmación

Por otro lado, el comando Git Commit se usa para guardar cualquier cambio que haya realizado en el repositorio local.

Ilustraremos esto con un ejemplo.

Digamos que ha creado una nueva función de rama que simplemente se llama "nueva función". La funcionalidad se derivará de la rama principal. A continuación, enviará un compromiso llamado "Completado con nueva funcionalidad". Justo cuando estaba impulsando su validación, uno de sus compañeros de trabajo también lanzó su propia función llamada "funcionalidad de compañero de trabajo".

Si luego crea una solicitud de extracción, a través del método de extracción mencionado anteriormente, y su rama se fusiona, podrá ver una nueva confirmación de fusión llamada "Nueva función de fusión de rama" en su consola.

Como estás trabajando en GitHub, por ejemplo, estarás comprobando su historial de confirmaciones. La interfaz de usuario le mostrará todas las confirmaciones ordenadas en el momento en que se enviaron. Entonces todo es lineal.

Esto significa que si varias personas fusionan varias ramas del proyecto, podrían confundirse y enredarse. Esta es la razón por la que algunos equipos de desarrolladores evitan usar solicitudes de fusión y extracción por cualquier medio necesario.

Para evitar mezclar ramas y perder partes importantes de su proyecto, se recomienda a todos que empujen directamente a la rama maestra. Esto mantendrá una historia lineal manteniendo las ramas únicas. Pero, ¿es posible expandirse en ramas y fusionarlas sin usar el comando Commit?

Usar Git Merge sin confirmar

Si escribe el comando man junto a Git Merge (man git merge) en su símbolo del sistema, abrirá la página de AYUDA para ese comando específico. Aquí es donde puede leer su documentación y cualquier argumento adicional que pueda usar más adelante para personalizar aún más sus operaciones.

A juzgar por la documentación, Git Merge llama al comando Commit de forma predeterminada. Commit tiene el atributo autocommit en Git Merge que lo activa automáticamente tan pronto como se ejecuta Merge.

En la misma página de ayuda, también verá el siguiente mensaje:

Con –no-commit, realice la fusión pero haga como si fallara la fusión y no realice la confirmación automática,

para dar al usuario la oportunidad de inspeccionar y ajustar aún más el resultado de la combinación antes comprometerse.

Esto significa que puede agregar un argumento adicional a su comando Git Merge (–no commit) para evitar que el comando active automáticamente Git Commit.

Su línea de símbolo del sistema debería verse así:

$> ~ / git / testrepo $ git merge –no-commit v1.0

Por supuesto, dependiendo de su nombre de usuario y proyecto, el lado izquierdo del comando será diferente, pero todo lo que esté a la derecha de "Git Merge" debe dejarse sin cambios.

Un problema común que podría interferir con este tipo de combinación de Git se llama Fast Forward. Verifique la salida después de presionar Enter en el comando anterior y si el mensaje dice Avance rápido, cambie la línea de comando a esto: git merge v1.0 –no-commit –no-ff

El argumento –no-ff evita el avance rápido y ejecuta el comando como se desea.

Gracias por visitar este sitio, espero que te haya gustado y vuelvas proximamente, compartela en las redes sociales, gracias

Compartir en Facebook Compartir en twitter

Semrush sigue a tu competencia

Fecha actualización el 2021-03-03. Fecha publicación el 2021-03-03. Categoría: aplicaciones Autor: Oscar olg Mapa del sitio Fuente: meterpreter