tutorial git github

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.