2011-10-07 14 views
68

Estoy probando Git y Bitbucket.Cómo enviar cambios locales a un repositorio remoto de git en bitbucket

He creado un repositorio en Bitbucket y he creado una copia local del repositorio y estoy ingresando archivos en él. No puedo empujar los archivos de mi repositorio local al repositorio remoto.

Esto es lo que estoy haciendo:

git clone https://[email protected]/me/test.git 
cd test 
touch dummy 
git add dummy 
git commit dummy -m "my first git commit" 
git push 

las salidas de línea finales:

Everything up-to-date 

y cuando me conecto a Bitbucket I cann't ver a mi archivo ficticio.

¿Qué estoy haciendo mal?

EDIT:

Hacer esto funcionó:

git push origin master:master 

Todas las explicaciones en cuanto a la diferencia entre esto y un simple git push?

+0

Cualquier nuevo git ver a esta pregunta, por favor ver http://stackoverflow.com/questions/5713563/reasons-for-not-working-on-the-master-branch-in-git – JGallardo

Respuesta

85

Use git push origin master en su lugar.

Tiene un repositorio localmente y el git push inicial lo está "presionando". No es necesario hacerlo (ya que es local) y muestra todo como actualizado. git push origin master especifica un repositorio remoto (origin) y la sucursal ubicada allí (master).

Para obtener más información, consulte this resource.

+0

Gracias por la explicación. – Joel

+2

También debo mencionar que cuando clonas algo, el repositorio 'origin' se define automáticamente. –

+0

OK, gracias. Estoy tratando de salir de la mentalidad svn. – Joel

14

Esta es una medida de seguridad para evitar empujar las ramas que no están listas para ser publicadas. En términos generales, al ejecutar "git push", solo las ramas locales que ya existen en el servidor con el mismo nombre serán empujadas, o las ramas que se han empujado utilizando la sintaxis de la rama local: remotebranch.

Para empujar todas las ramas locales al repositorio remoto, utilice --all:

git push REMOTENAME --all 
git push --all 

o especificar todas las ramas que desea empujar:

git push REMOTENAME master exp-branch-a anotherbranch bugfix 

Además, es útil añadir -u a la comando "git push", ya que esto le dirá si su sucursal local está adelante o detrás de la sucursal remota. Esto se muestra cuando ejecuta "estado de git" después de una búsqueda de git.

8

estoy con Git descargar desde https://git-scm.com/ y set up ssh seguimiento a la respuesta para obtener instrucciones https://stackoverflow.com/a/26130250/4058484.

Una vez que la clave pública generada se verifica en mi cuenta Bitbucket, y haciendo referencia a los pasos que se han explicado en http://www.bohyunkim.net/blog/archives/2518 encontré que simplemente 'git push' está trabajando:

git clone https://[email protected]/me/test.git 
cd test 
cp -R ../dummy/* . 
git add . 
git pull origin master 
git commit . -m "my first git commit" 
git config --global push.default simple 
git push 

responden Shell son de la siguiente manera:

$ git push 
Counting objects: 39, done. 
Delta compression using up to 2 threads. 
Compressing objects: 100% (39/39), done. 
Writing objects: 100% (39/39), 2.23 MiB | 5.00 KiB/s, done. 
Total 39 (delta 1), reused 0 (delta 0) 
To https://[email protected]/me/test.git 992b294..93835ca master -> master 

incluso funciona para empujar en la fusión de master to gh-pages en GitHub

git checkout gh-pages 
git merge master 
git push 
Cuestiones relacionadas