I tried to install git + gitolite following this manual - using root instalation from server. I just do not understand if new gitolite users have to have their user accounts?. When I add tester.pub key into keydir folder and configure access to some repository, git always ask for a password and do not allow me to clone anything
git clone tester@myserver.com:testrepo
Initialized empty Git repository in /home/testuser/git/testrepo/.git/
testuser@myserver.com's password:
Permis开发者_高级运维sion denied (publickey,password).
fatal: The remote end hung up unexpectedly
I don't believe that create system account (adduser testuser) is neccessarry because gitolite should be installable and configurable even without root access onto server.
So could anybody please show me what I have misunderstood?
Thank you very much.
EDIT:
Well... I reinstall gitolite using client instalation transcript. Now adding and pushing new pub keys successfully changes ~/.ssh/authorized_keys for my git user on server. So it seems better than my first try. But I still can not clone any repozitory from another place. When I try to add pub key + edit config for my windows PC with msysgit, then try
$ git clone git@server.com:project.git
cloning into project...
Fatal ERROR: unable to authenticate
Fatal: the remote end hung up unexpectedly
On other hand when try another linux, it still request for password.
# git clone git@server.com:project.git
Cloning into project...
git@server.com's password:
Even when I provide password for git user:
fatal: 'project.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
This was probably caused by broaken system account.
Now I really dont know what to do - should I create somehow .ssh/config on each client to make it work?
Now I am starting to be little bit annoyed and upset and I will probably remove all and try mercurial:-D Except someone could help me:) Thank you.
Yes thats the problem... me too faced the same.. i created the public key using puttygen ssh2-rsa format gitolite does not accept this. You need to convert to openssh
ssh-keygen -i -f yourname.pub > yourname_openssh.pub
Now use this converted public key
There is no 'keydata
' folder, only 'keydir
' and 'conf
' (as mentioned in the documentation).
If you have cloned locally the gitolite-admin
repo (git clone gitolite@server:gitolite-admin
), you need to:
- add your new public key named after the user in the
keydir
repo:username.pub
- add that same username in one of the user groups in
conf/gitolite.conf
- push back the new modifications to the gitolite server (there is a special hook on the
gitolite-admin
repo which will add the new public key to the~/.ssh/authorized_keys
file).
I solved msysgit problem.
- I reinsall msysgit and use OPENSSH instead of PUTTY (it is recommended in install manual of gitolite - but I had msysgit installed before)
- when generating ssh-key, it must have default name id_rsa otherwise it did not work for me
Because I always had custom name for key, I can not say if step 1 is neccessary and I won't try it again:) Now I can clone/commit/push - finally.
Special thanx to VonC for his patience
精彩评论