from español delete create branches another git branching-and-merging

español - Cómo resolver el error "no es algo que podamos fusionar" de git



git merge español (16)

Como se muestra en ¿Cómo surge "no algo que podemos fusionar"? , este error puede surgir de un error tipográfico en el nombre de la rama porque está intentando extraer una rama que no existe.

Si ese no es el problema (como en mi caso), es probable que no tenga una copia local de la sucursal que desea fusionar. Git requiere el conocimiento local de ambas sucursales para fusionarlas. Puede resolver esto comprobando la rama a fusionar y luego volviendo a la rama en la que desea fusionarse.

git checkout branch-name git checkout master git merge branch-name

Esto debería funcionar, pero si recibe un error diciendo

error: pathspec ''remote-name/branch-name'' did not match any file(s) known to git.

debe obtener el control remoto (probablemente, pero no necesariamente, "origen") antes de verificar la rama:

git fetch remote-name

Acabo de encontrar un problema al fusionar una rama en master en git. Primero, obtuve el nombre de la rama ejecutando git ls-remote . Llamemos a esa rama "nombre de rama". Luego ejecuté el comando git merge branch-name y obtuve el siguiente resultado:

fatal: branch-name - not something we can merge

¿Cómo resuelvo este error?


Cuando salgo de un control remoto hacia arriba, git fetch --all hizo el truco por mí:

git remote add upstream [url to the original repo] git checkout [branch to be updated] git fetch --all git merge upstream/[branch to be updated]

En otros casos, encontré que el error "No hay algo que podamos fusionar" también ocurrirá si la rama remota (origen, ascendente) no existe. Esto puede parecer obvio, pero podría encontrarse haciendo git merge origin/develop en un repositorio que solo tiene master .


El método de abajo funcionó para mí cada vez.

git checkout master git pull git checkout branch-name-to-be-merged git pull git checkout branch-name git pull git merge branch-name-to-be-merged


Es una sugerencia tonta, pero asegúrese de que no haya errores tipográficos en el nombre de la rama.


Esta respuesta no está relacionada con la pregunta anterior, pero me enfrento a este tipo de problema, tal vez este uso completo a alguien, estoy fusionando mi rama de función para dominar como a continuación

$ git merge fix-load merge: fix-load - not something we can merge

Para esto, estoy por encima de todas las soluciones pero no trabajo a nadie,

Finalmente, encontré el problema en el error de ortografía en el nombre de mi rama (en realidad, el nombre de la rama de combinación es corregir-cargas).


Este error sugiere que la sucursal desde donde desea fusionar los cambios (es decir, en su caso, el nombre de la sucursal) no está presente en su localidad, por lo que debe revisar la sucursal y buscar los cambios locales. Realice el pago a su sucursal maestra y busque, luego siga los pasos a continuación:

git checkout branch-name git pull git checkout new-branch-name git merge branch-name


Le sugiero que compruebe si puede cambiar a la rama con la que intenta fusionarse.

Recibí este error a pesar de que la rama con la que quería fusionarme estaba en el repositorio local y no había errores de ortografía.

Ignoré mis cambios locales para poder cambiar a la rama (también se puede preferir Stash o commit). Después de esto volví a la rama inicial, y la fusión fue exitosa.


Lo intenté

git merge <branch-name> "Commit-message"

en lugar de

git merge <branch-name> -m "Commit-message"


Para la posteridad: Como dijo AxeEffect ... si no tiene errores tipográficos, verifique si tiene caracteres ridículos en el nombre de su sucursal local, como comas o apóstrofes. Exactamente eso me pasó justo ahora.


Para mí el problema ocurrió cuando intenté esto:

git merge -s ours --no-commit --allow-unrelated-histories <remote name>/develop

Así que en realidad debería haber escrito master lugar de develop , porque maestro era el nombre de sucursal de Subtree, no mi rama real.


Puede suceder porque esa rama no está en su local. antes de fusionar el uso

git fetch origin


Recibí este error cuando hice un git merge BRANCH_NAME "some commit message" agregar la marca -m para el mensaje de confirmación, por lo que pensé que el nombre de la rama incluía el comentario.


Recibimos este error porque teníamos una coma (,) en el nombre de la rama. Eliminamos la sucursal local, luego la revisamos con un nuevo nombre sin la coma. Pudimos fusionarlo con éxito.


Recibirá este error porque la rama que desea fusionar no existe en su repositorio local.

Entonces, primero compruebe el brach que desea fusionar en la rama maestra con el siguiente comando:

git checkout branch_name_to_merge

Después de esto, intente fusionarlo con la rama maestra con el siguiente comando:

git merge branch_name_to_merge


Si la cadena que contiene la referencia es producida por otro comando Git (o cualquier otro comando de shell), asegúrese de que no contenga un carro de retorno al final. Tendrá que eliminarlo antes de pasar la cadena a "git merge".

Tenga en cuenta que es bastante obvio cuando esto sucede, porque el mensaje de error aparece en 2 líneas:

merge: 26d8e04b29925ea5b59cb50501ab5a14dd35f0f9 - not something we can merge


Yo también tuve este problema. La rama se veía como ''nombre de usuario / maestro'', lo que parecía confundir a git ya que parecía una dirección remota que definí. Para mi usar esto

git merge origin/username/master

Funcionó perfectamente bien.