2012-09-25 11 views
5

Mientras esperaba que sysadmin configurara el repositorio gerrit, hice mi propia sucursal. Él acaba de enviarme la dirección del repositorio. Lo configuré para el origen y de alguna manera presioné mi último compromiso. La clonación del repositorio funciona bien, sin embargo, git branch -r no devuelve nada. ¿Que esta pasando aqui?No puedo ver mi bifurcación remota

$ git init 
# made some comits  
git config remote.origin.url ssh://gerrit.mm-sol.com/branchname 

$ git push origin SH1-of-my-last-commit: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. 
error: failed to push some refs to 'ssh://gerrit.mm-sol.com/apps/phone-shaker' 

$ git push origin master 
Counting objects: 85, done. 
Delta compression using up to 4 threads. 
Compressing objects: 100% (85/85), done. 
Writing objects: 100% (85/85), 20.95 KiB, done. 
Total 85 (delta 49), reused 0 (delta 0) 
remote: Resolving deltas: 100% (49/49) 
remote: Updating references: 100% (1/1) 
To ssh://gerrit.mm-sol.com/branchname 
* [new branch]  master -> master 
+0

Pruebe 'git fetch origin' y luego' git branch -r' de nuevo. – Amber

+0

Si aún no ha empujado nada, el repositorio clonado no mostrará ninguna rama. Debería tener después del último comando, sin embargo. – fork0

+0

@Amber: 'git push' actualiza el seguimiento remoto y remoto (el puntero de la sucursal local, que coincide con el remoto) punteros de rama – fork0

Respuesta

20

Prueba esto:

git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" 
git fetch origin 

y luego tratar git branch -r nuevo.

En el futuro, cuando la creación de mandos a distancia, es preferible utilizar el siguiente comando en lugar de git config:

git remote add <remotename> <remoteurl> 

por ejemplo,

git remote add origin ssh://gerrit.mm-sol.com/branchname 

Esto establecerá automáticamente tanto la configuración url y fetch.

+0

Otro problema resuelto :) Estoy acostumbrado a clonar repositorios y estaba haciendo esto por primera vez. ¡Tahnks mucho, Amber! – Vorac

1

Trate de git push -u origin master

+0

Ah, claro. Si se usa el 'git remote add', se hubiera hecho, pero el comando de configuración estaba algo incompleto:' git config remote.origin.url ... ' – fork0

+0

mvitkov @ mms: ~/projects/myproject $ git push - u master de origen Maestro de sucursal configurado para rastrear el maestro de sucursal remota desde el origen. Todo al día. Sin embargo, la rama git -r todavía no devuelve nada. – Vorac

Cuestiones relacionadas