Me estoy volviendo loco con un problema al clonar el repository gitolite-admin. Seguí este http://sitaramc.github.com/gitolite/install.html#migr y salió perfecto.
scp ~/.ssh/id_rsa.pub morten@ubuntu-server:/tmp/morten.pub
ssh-keygen -t rsa
y scp ~/.ssh/id_rsa.pub morten@ubuntu-server:/tmp/morten.pub
authorized_keys en el server se ve así:
# gitolite start command="/home/morten/gitolite/src/gitolite-shell morten",no-port-forwarding,no-X11-forwarding,no-agent-forward$ # gitolite end
Que AFAIK está bien.
Cuando ejecuto git clone morten@ubuntu-server:gitolite-admin
en mi cliente, obtengo
fatal: 'gitolite-admin' does not appear to be a git repository fatal: The remote end hung up unexpectedly
¡No tengo idea de lo que me perdí!
Usar la count de morten
está perfectamente bien.
Sin embargo, su installation es extraña, considerando su contenido actual de ~morten/.ssh/authorized_keys
:
En lugar de /home/morten/gitolite/src/gitolite-shell morten
|, debe tener /home/morten/gitolite/bin/gitolite-shell morten
Eso significa que: gitolite-shell
debe estar en su $PATH
, y debe estar en un directory bin, creado después de la ejecución:
"${github}/install" -to "${gtl}/bin"
(Consulte la opción 3 de la sección "installation real" de " Instalación de Gitolite ")
con:
github
el path donde has clonado https://github.com/sitaramc/gitolite
gtl
la ruta en la que desea instalar gitolite (en su caso, por ejemplo, /home/morten/gitolite
) Luego, es más fácil save su file .gitolite.rc
y .gitolite.rc
y volver a realizar el process de initialization:
gitolite setup -pk "${HOME}/.ssh/gitoliteadm.pub"
(siempre que haya creado su key pública y privada, llamándola ' gitoliteadm
', con un simple:
ssh-keygen -t rsa -f "${H}/.ssh/morten" -C "Gitolite Admin access (not interactive)" -q -P ""
)
Tenga en count que mantengo el nombre de la count 'ssh' ( morten
) diferente a la count del server gitoliteadm
( gitoliteadm
) a propósito.
Todavía clonarás con git clone morten@ubuntu-server:gitolite-admin
(porque todos los files ssh están en ~morten/.ssh
), pero lo harás con la key privada / pública de gitoliteadm
, lo que hará que gitolite acceda a su repository con una "count" de gitoliteadm
llamada " gitoliteadm
".
De esta forma, si cambia la count de usuario física para su server gitolite, la count "lógica" ' gitoliteadm
' (se refiere a un rol , no a una persona o recurso).