empujando a git twig remota

Podría usar una mano para aprender cómo enviar una sucursal local a una sucursal remota. Por favor ver más abajo. Ayuda muy apreciada!

La sucursal local se creó después de la clonación del repository y luego

$ git checkout -b mybranch remotes/origin/mybranch $ git branch -a master * mybranch remotes/origin/HEAD -> origin/master remotes/origin/master remotes/origin/mybranch 

Pero cuando intentamos hacer una copy de security de los cambios:

 $ git push mybranch mybranch fatal: 'mybranch' does not appear to be a git repository fatal: The remote end hung up unexpectedly $ git push remotes/origin/mybranch mybranch fatal: 'mybranch' does not appear to be a git repository fatal: The remote end hung up unexpectedly $ git push origin/mybranch mybranch fatal: 'mybranch' does not appear to be a git repository fatal: The remote end hung up unexpectedly 

Tratar

 git push origin mybranch 

Esto empuja a su twig llamada mybranch al origen nombrado remoto

Como dice Abizern, esto funciona:

 git push origin mybranch 

Pero, para explicarlo más a background, la parte de mybranch es un refspec . Esto especifica la reference remota que debe actualizarse con la confirmación local dada.

Entonces, el command anterior es equivalente a:

 git push origin mybranch:mybranch 

o incluso:

 git push origin mybranch:refs/heads/mybranch 

y, de hecho, ya que estás en la twig local mybranch, podrías haber hecho:

 git push origin HEAD:mybranch 

Esto es bueno de entender, porque a menudo me encuentro haciendo cosas como:

 git push origin HEAD^:mybranch 

donde desea empujar todo less el parche superior a la twig remota.

Finalmente, si desea eliminar el mybranch remoto, lo hace:

 git push origin :mybranch 

Esta es una vieja pregunta, pero utilicé esta página como un ref atrás en el día, y tengo una respuesta con una perspectiva diferente. Según mi experiencia, la mejor manera es modificar la configuration de tu configuration de forma tal que un git push sea ​​todo lo que tendrás que ingresar al final.

Pasará a la misma twig remota desde la que actualiza su código:

  • git config --global push.default upstream

Y ahora, configura la twig remota como ascendente (si no lo estaba):

  • git branch --set-upstream-to origin/the_master
  • NOTA: Las versiones anteriores pueden recurrir a esta forma obsoleta del command /.
  • git branch --set-upstream local_branch origin/the_master

Tienes dos twigs: una local y una remota. Hacer un git pull o un git push sin args debería, y lo hará ahora, hacer lo que quieras. Esto no lo limitará a presionar a sucursales remotas con el mismo nombre que el local, como lo hacen algunos de los commands anteriores.

Una última cosa que suelo hacer: modificar git pull para cambiar de esta secuencia:

  • git fetch && git merge [remote_upstream] to
  • git fetch && git rebase [remote_upstream]

Con este command: git config --global branch.autosetuprebase remote