tutorial - Empujar un repositorio de github grande falla con "no se puede empujar a un destino no calificado: maestro"
github sin in (4)
Esto funcionó para mí: creé la rama remota en la interfaz de usuario de github y luego presioné mi rama local que tenía el mismo nombre. Pruébelo en caso de que otras formas no funcionen. Otra forma sería crear una nueva sucursal localmente y empujar una rama vacía y luego seleccionar su confirmación y empujar nuevamente a su control remoto.
Verifique esto y un problema similar: al eliminar la rama remota de git "error: no se puede empujar a un destino no calificado"
Tengo un gran repositorio git (creado a partir de un repositorio SVN) y quiero llevarlo a github. Dado que es grande, no puedo tratar de empujarlo directamente, ya que falla con un error de "paquete demasiado grande".
Todo bien hasta ahora, puedo empujar el repositorio una vez a la vez. Pero cuando trato de hacer esto, lo que sucede es:
git push origin 86c310d8a680d6d0e052fa7db89adb25348f3e54:master
error: unable to push to unqualified destination: master
The destination refspec neither matches an existing ref on the remote nor
begins with refs/, and we are unable to guess a prefix based on the source ref.
Por lo tanto, todavía no hay una rama maestra en el repositorio remoto, pero estoy tratando de avanzar y falla.
¿Cómo puedo solucionar esto? ¿O cómo creo una rama maestra vacía en el control remoto para poder avanzar?
Presione para
refs/heads/master
, solo esta vez.
git push origin whatever:refs/heads/master
Eso lo creará inequívocamente como una rama, y podrá impulsarlo normalmente en el futuro.
Esto funciona porque no hay una referencia remota nombrada maestra (aún no se ha creado), la referencia objetivo no está completamente calificada con referencias / por lo que git no puede resolverlo en base a eso, y la referencia fuente es un hash en lugar de un nombre, por lo que tampoco puede resolverlo basándose en eso. Al presionar a refs / heads / master funciona porque la segunda condición es verdadera, y luego existe master en el control remoto, por lo que la primera condición es verdadera
También puede crear una nueva sucursal con
git checkout -b branchName
y luego empuje su repositorio git a esa rama
git push origin whatever:branchName
Tuve el mismo error y descubrí que había escrito mal el nombre de mi rama. Por lo tanto, puede comprobar que verifique dos veces el nombre de la sucursal para asegurarse de que las letras mayúsculas, etc., estén en el lugar correcto.