Error cuando "git push" a github

Tengo un repository público en github.com con 2 twigs: master y test .

Creé un nuevo directory localmente e hice:

 [ ] git clone git@github.com:{username}/{projectname}.git 

Luego creé una nueva twig llamada my_test con

 [ ] git branch my_test 

y se cambió a eso.

 [ ] git checkout my_test 

Luego lo fusioné de mi twig de test de mi repository público con

 [ ] git merge origin/test 

y resultó en un avance rápido.

Hice algunos cambios y los comprometí. Luego traté de empujar la twig my_test local a la twig de test pública en github con

 [ ] git push git@github.com:{username}/{projectname}.git test 

pero obtuve este error:

 error: src refspec test does not match any. fatal: The remote end hung up unexpectedly error: failed to push some refs to 'git@github.com:{username}/{projectname}.git 

Qué estoy haciendo mal ?

Tal vez intente:

 git push git@github.com:{username}/{projectname}.git HEAD:test 

El formatting del último parámetro en esa línea de command es un refspec que es una fuente ref seguida de dos puntos y luego la reference de destino. También puede usar su nombre de sucursal local ( my_test ) en lugar de HEAD para asegurarse de que está presionando la twig correcta.

La documentation para git push tiene más detalles sobre este parámetro.

Además, no necesita escribir la url completa cada vez que quiera presionar. Cuando ejecutó el clon, git guardó ese URL como 'origen', por eso puede ejecutar algo como 'fusionar origen / testing' – significa la twig 'testing' en su server 'de origen'. Por lo tanto, la forma más sencilla de enviar a su server en ese caso sería:

 git push origin my_test:test 

Eso impulsará su twig 'my_test' local a la twig 'test' en su server 'origin'. Si ha nombrado a su sucursal local igual que a la sucursal en el server, entonces no es necesario que tenga dos puntos, simplemente puede hacer:

 git push origin test 

Creo que aquí deberás configurar el seguimiento de sucursales. Ejecute lo siguiente para habilitar el seguimiento

 git branch --track my_test origin/my_test 

Probar

 git push -u origin my_test git pull origin my_test 

Este error también aparece si intenta ingresar a un nuevo repository sin haber comprometido nada primero. Tratar:

 git add -A git commit -am 'Initial commit' 

Y luego testing tu empuje de nuevo.

Debe asegurarse de que su repository local tenga el mismo nombre que el repository remoto que está tratando de implementar.

Primero, cambie el repository usando git branch -m "test" para que "my_test" sea "testing". En segundo lugar, testing de origen de git push