He intentado comenzar un proyecto usando EGit con Bitbucket pero no puedo enviar el proyecto al repository en el server.
Estos son los pasos que he seguido (intentaré ser muy específico para que otras personas puedan usarlo como modo de tutorial, aunque no funcione para mí podría funcionar para otros):
1) Instalé Git en Ubuntu 12.10 usando este tutorial
2) Seguí este tutorial para GitHub.
ssh://git@bitbucket.org/myuser/myrepository.git
, Protocol: ssh; puerto: blanco; usuario: git; contraseña: en blanco Todo está hecho. Sin embargo, cuando presiono "Empujar" recibo el siguiente error:
ssh://git@bitbucket.org/myuser/myrepository.git: push not permitted
Probé todas las configuraciones posibles: cambié a un nuevo espacio de trabajo, actualicé Eclipse, creé nuevos repositorys, volví a instalar Git … ¿Alguna idea?
Bien, finalmente encontré la manera de trabajar con eso.
Solo está cambiando el modo de authentication. Si se usa el enlace HTTPS, en lugar de usar el enlace SSH, todo funciona perfectamente. Parece que SSH funciona solo en modo de solo lectura.
Por supuesto, el método de authentication es diferente: debe escribir la contraseña y las keys SSH almacenadas en Bitbucket ya no son necesarias.
Para aquellos que están teniendo problemas con EGit, recomiendo seguir la forma de eugener de configurar automáticamente EGit. Luego solo tiene que seleccionar HTTPS como modo de authentication para enviar las confirmaciones almacenadas.
Hay much simpler way
de configurar repositorys Git remotos en Eclipse:
Desde que se clonó un repository, la configuration remota se configuró automáticamente. Esto significa que podrá presionar inmediatamente
Puede ser una configuration incorrecta de nombre de usuario en .gitconfig .
Probablemente relacionado, arreglé los problemas de "auth fail" siguiendo las instrucciones en: http://wangpidong.blogspot.com.es/2012/05/how-to-use-bitbucket-with-egit-in.html
Obtenido de: Configurando egit con BitBucket
En este caso específico, estoy de acuerdo con la resolución del comentario de Olivier J. en la pregunta original.
Pero he tenido un problema similar y fue causado por otra cosa. Lo resolví y aquí está lo que sucedió:
He estado usando algún repository privado en Bitbucket (A) con alguna count de usuario y alguna key pública (X) para acceder a él. He cargado la key X en el llavero Masilla de mi pageant
.
Luego creé un nuevo repository público (B), también en Bitbucket con una count de usuario diferente y otra key pública (Y). Agregué esta key al pageant
también.
Cuando intenté acceder al repository B aparentemente se utilizó la key pública X y no Y, porque … para el cliente SSH ambas conexiones son las mismas: ¡el mismo usuario (git) en el mismo server (bitbucket.org)! Y la tecla X se usó primero porque … ¿se cargó antes? O tal vez porque su nombre era alfabéticamente primero? No estoy seguro, pero el resultado fue que …
El acceso de solo lectura para B usando X fue otorgado porque el repository era público y cualquier key de usuario de Bitbucket válida era suficiente para get este tipo de acceso.
… pero escribir (presionar) requería la tecla Y, que no fue utilizada por SSH.
Por lo tanto, el consejo general es: para resolver el extraño git de solo lectura a través de los errores de acceso SSH, compruebe con cuidado qué key privada realmente usa SSH .
Resolví este problema cargando solo una key, X o Y, en el pageant
a la vez, pero me encantaría hacerlo de una forma más inteligente. Por favor, háganmelo saber si sabe cómo hacerlo.
Usando Bitbucket lo hago de esta manera: