He sacado todas las ramas remotas a través de git fetch --all. Puedo ver la rama a través de la cual me gustaría fusionar git branch -acomo remotes / origin / branchname. El problema es que no es accesible. ¿No puedo fusionarme o pagar?
fuente
He sacado todas las ramas remotas a través de git fetch --all. Puedo ver la rama a través de la cual me gustaría fusionar git branch -acomo remotes / origin / branchname. El problema es que no es accesible. ¿No puedo fusionarme o pagar?
Puede hacer referencia a esas ramas de seguimiento remoto ~ (enumeradas con git branch -r) con el nombre de su control remoto.
Debe buscar la rama remota:
git fetch origin aRemoteBranch
Si desea fusionar una de esas sucursales remotas en su sucursal local:
git checkout master
git merge origin/aRemoteBranch
Nota 1: Para un repositorio grande con un historial largo, querrás agregar la --depth=1opción cuando la uses git fetch.
Nota 2: estos comandos también funcionan con otros repositorios remotos para que pueda configurar un originy un upstreamsi está trabajando en una bifurcación.
Escenario opuesto: si desea fusionar una de sus sucursales locales en una sucursal remota (en lugar de una sucursal remota en una sucursal local, como se muestra arriba), primero debe crear una nueva sucursal local encima de dicha sucursal remota:
git checkout -b myBranch origin/aBranch
git merge anotherLocalBranch
La idea aquí es fusionar "una de su sucursal local" (aquí anotherLocalBranch) con una sucursal remota ( origin/aBranch).
Para eso, crea primero " myBranch" como representación de esa rama remota: esa es la git checkout -b myBranch origin/aBranchparte.
Y luego puedes fusionarte anotherLocalBranch(a myBranch).
aLocalBranch" a "myBranch", con "myBranch" representando una sucursal remotaorigin/aBranch.aLocalBranchque no es un error tipográfico, pero aprobó la última edición (¡2 años después!) Que corrige este "error tipográfico probable". Quería consultar con usted antes de deshacer la edición.Cada vez que hago una fusión, entro en la rama en la que quiero fusionarme (por ejemplo, "
git checkout branch-i-am-working-in") y luego hago lo siguiente:git merge origin/branch-i-want-to-merge-fromfuente
git fetch origin/branch-i-want-to-merge-fromprimero, ¿verdad?git fetch origin developseguido degit merge origin/developgit mergesolo no lo hará.git add .->git commit -m <message>->git push -u origin <branch>?Obtenga la rama remota desde el origen primero.
Fusionar la sucursal remota con la sucursal local
fuente
Tal vez desee rastrear la sucursal remota con una sucursal local:
git branch new-local-branchgit branch --set-upstream-to=origin/remote-branch new-local-branchgit checkout new-local-branchgit pullfuente
Si ya buscó su rama remota y lo hace
git branch -a,obtendrá algo como:
Después de eso, puede usar
rep_mirror/8.0para designar localmente su sucursal remota.El truco es que
remotes/rep_mirror/8.0no funciona perorep_mirror/8.0sí.Entonces, un comando como
git merge -m "my msg" rep_mirror/8.0hacer la fusión.(nota: este es un comentario a la respuesta @VonC. Lo puse como otra respuesta porque los bloques de código no se ajustan al formato del comentario)
fuente