Sincronización de una bifurcación desde la IU web
-
En GitHub Enterprise Server, navega a la página principal del repositorio bifurcado que quieras sincronizar en el repositorio de nivel superior.
-
Encima de la lista de archivos, seleccione el menú desplegable Sincronizar bifurcación.
-
Revisa los detalles sobre las confirmaciones del repositorio ascendente y, a continuación, haz clic en Actualizar rama.
Si los cambios del repositorio de nivel superior ocasionan conflictos, GitHub te pedirá crear una solicitud de cambios para resolver los conflictos.
Sincronización de una bifurcación de rama con GitHub CLI
GitHub CLI es una herramienta de código abierto para usar GitHub desde la línea de comandos del equipo. Cuando trabajas desde la línea de comandos, puedes utilizar el GitHub CLI para ahorrar tiempo y evitar cambiar de contexto. Para más información sobre GitHub CLI, consulta "Acerca del CLI de GitHub".
Para actualizar la bifurcación remota desde su elemento primario, usa el subcomando gh repo sync -b BRANCHNAME
y proporciona el nombre de la bifurcación y la rama como argumentos.
gh repo sync owner/cli-fork -b BRANCH_NAME
Si los cambios del repositorio ascendente provocan un conflicto, la GitHub CLI no se podrá sincronizar. Puede establecer la marca --force
para sobrescribir la rama de destino.
Sincronización de una bifurcación de rama desde la línea de comandos
Para poder sincronizar la bifurcación con un repositorio ascendente, debes configurar un repositorio remoto que apunte al repositorio ascendente en Git. Para obtener más información, vea «Configuración de un repositorio remoto para una bifurcación».
-
Abra TerminalTerminalGit Bash.
-
Cambiar el directorio de trabajo actual en tu proyecto local.
-
Extrae las ramas y sus respectivas confirmaciones desde el repositorio ascendente. Las confirmaciones en
BRANCHNAME
se almacenarán en la rama localupstream/BRANCHNAME
.$ git fetch upstream > remote: Counting objects: 75, done. > remote: Compressing objects: 100% (53/53), done. > remote: Total 62 (delta 27), reused 44 (delta 9) > Unpacking objects: 100% (62/62), done. > From https://HOSTNAME/ORIGINAL_OWNER/ORIGINAL_REPOSITORY > * [new branch] main -> upstream/main
-
Revise la rama predeterminada local de la bifurcación; en este caso, utilizamos
main
.$ git checkout main > Switched to branch 'main'
-
Combine los cambios de la rama predeterminada ascendente (en este caso,
upstream/main
) en la rama predeterminada local. Esto hace que la rama predeterminada de tu bifurcación se sincronice con el repositorio ascendente sin perder tus cambios locales.$ git merge upstream/main > Updating a422352..5fdff0f > Fast-forward > README | 9 ------- > README.md | 7 ++++++ > 2 files changed, 7 insertions(+), 9 deletions(-) > delete mode 100644 README > create mode 100644 README.md
Si la rama local no tiene ninguna confirmación única, Git realizará un avance rápido. Para obtener más información, consulta Bifurcación y combinación básicas en la documentación de Git.
$ git merge upstream/main > Updating 34e91da..16c56ad > Fast-forward > README.md | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-)
Si la rama local tenía confirmaciones únicas, es posible que tengas que resolver conflictos. Para obtener más información, vea «Cómo abordar los conflictos de combinación».
Sugerencia: Con la sincronización de la bifurcación solo se actualiza la copia local del repositorio. Para actualizar la bifurcación en tu instancia de GitHub Enterprise Server, debes enviar los cambios.