Empujar desde el repositorio local al remoto alojado en GitHub


113

Creé un repositorio local de mi carpeta de solución Visual Studio 2010 usando Git GUI en mi máquina de desarrollo. Luego creé un repositorio remoto en mi cuenta de GitHub. Ahora, estoy buscando cómo enviar mi repositorio local al repositorio remoto.

En SVN puedo confirmar usando TortoiseSVN y los cambios se envían al repositorio remoto. No veo ninguna herramienta como esa disponible para Git.

¿Cómo envío mi repositorio local a mi repositorio remoto en GitHub?

Respuestas:


230

Empuja su repositorio local al repositorio remoto usando el git pushcomando después de establecer primero una relación entre los dos con el git remote add [alias] [url]comando. Si visita su repositorio de Github, le mostrará la URL que debe usar para enviar. Primero ingresará algo como:

git remote add origin git@github.com:username/reponame.git

A menos que haya comenzado ejecutando git clonecontra el repositorio remoto, en cuyo caso este paso ya se ha realizado.

Y después de eso, escribirás:

git push origin master

Después de su primer empujón, simplemente puede escribir:

git push

cuando desee actualizar el repositorio remoto en el futuro.


1
¿Estás escribiendo '~ origen ~' o simplemente 'origen'? Será mejor que evites la tilde, ya que significa algo para Git.
GoZoner

1
Para mí, funciona solo con https: github.com/username/repo.git, no sé por qué.
eLRuLL

7
git pull origin masterPrimero tuve que presionar, luego presionar
Renaud

10
¿Por qué no pueden explicar esto en documentos normales? Es como si esto fuera un secreto o alguna mierda. ¡GRACIAS!
R Claven

1
@RClaven, después de crear un nuevo repositorio en Github, esto se explica claramente en la pantalla siguiente en la sección etiquetada "Insertar un repositorio existente desde la línea de comando".
mujimu

3

Tipo

git push

desde la línea de comando dentro del directorio del repositorio


1
¿Supongo que eso implicaría usar gitbash en lugar de gitgui?
quakkels

Sí, si está en un sistema sin una línea de comando con todas las funciones incorporada, entonces eso es algo para mencionar en la pregunta
Gareth

no, tengo eso ... Estoy algo intimidado por la línea de comandos. Sobre todo porque no lo he usado mucho. Esto ayudará a cambiar eso.
quakkels

Puede ser una curva de aprendizaje empinada, pero la opinión común es que los beneficios superan con creces las desventajas
Gareth

Gracias. No quería tener que mirar mucho más tiempo. El IDE sigue congelando hasta el tamaño. Gracias de nuevo.
Eric Leroy

3

Subversion tiene implícitamente el repositorio remoto asociado en todo momento. Git, por otro lado, permite muchos "controles remotos", cada uno de los cuales representa un único lugar remoto al que puede empujar o tirar.

Debe agregar un control remoto para el repositorio de GitHub a su repositorio local, luego usar git push ${remote}o git pull ${remote}para empujar y tirar respectivamente, o los equivalentes de GUI.

Pro Git analiza los controles remotos aquí: http://git-scm.com/book/ch2-5.html

La ayuda de GitHub también los analiza de una manera más "centrada en las tareas" aquí: http://help.github.com/remotes/

Una vez que haya asociado los dos, podrá empujar o tirar de ramas.


1

Esto funcionó para mi versión 1.8.4 de GIT:

  1. Desde la carpeta del repositorio local, haga clic derecho y seleccione ' Git Commit Tool '.
  2. Allí, seleccione los archivos que desea cargar, en ' Cambios sin etapas ' y haga clic en el botón ' Etapa modificada '. (Inicialmente puede hacer clic en el botón ' Volver a escanear ' para verificar qué archivos se han modificado y no se han cargado todavía).
  3. Escriba un mensaje de confirmación y haga clic en el botón " Confirmar ".
  4. Ahora haga clic derecho en la carpeta nuevamente y seleccione ' Git Bash '.
  5. Escriba: git push origin master e ingrese sus credenciales. Hecho.

0

abre el símbolo del sistema Ir al directorio del proyecto

escriba git remote agregue el origen de la ubicación del repositorio de git hub con.git

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.