Photo by Sebastian Palomino on Pexels.com
Cuando el git bash nos dice: Github refusing to merge unrelated histories (Github rechaza unir historias no relacionadas) tal y como podria parecer una posible solución es
$git push origin master --allow-unrelated-histories
Ahora si lo que quiere es hacer merge:
$git merge origin master --allow-unrelated-histories
De esta manera, se garantiza que las historias no relacionadas o inconexas (unrelated-histories) puedan ser conectadas al repositorio.
Opcion BEs posible que la solucion no siempre funcione, en realidad el problema es que no estamos especificando el `upstream' a dónde enviar los cambios
$ git push origin master
Ahora según el error en la descripción es probable que la historia difiera por lo que puede forzar el push
$ git push origin master --force
Aunque lo mejor sería hacer un mergey después subir los cambios
$ git pull origin master $ git push origin masterOPCION C
Pero si si su remoto tiene un commit que su local no tiene, y viceversa. No hay un ancestro común y por lo tanto no se puede hacer merge.
Si el código del remoto es ligeramente parecido a tu código local y efectivamente quiere hacer un merge, la solución sería:
git fetch --all git reset --soft origin/master git add --all git commit -am "commit sobre l primer commit remoto" git push origin master
Si de verdad los códigos no tienen nada que ver, puede hacer:
git push -f --set-upstream origin master
Y con eso va a pisar el remoto forzadamente con sus commits locales. Ojo que con esto se perderá lo que hay en el remoto.