gitosis clone项目时需要密码,全路径 解决办法

搭建好git后搭建gitosis

全部完成后在clone项目时 (管理员仓库), 提示需要输入密码,但是如果输入密码就会绕过gitosis的管理.那么安装gitosi就没什么意义了

解决的办法,除了几个目录的权限必须设置正确以外 (不能设置为777,有些目录只能设置为600或755什么的,设置目录权限网上有很多文章,这里就不说了)

但是设置过目录的权限之后还是提示让输入密码. 这个时候就需要特别注意了:

关键的地方在于你很可能手动导入过公钥,之后gitosis初始化的时候又导入了一次

gitosis会将你的xxx.pub的内容导入到git用户的.ssh/authorized_keys"文件

但是:


gitosis导入的格式和通常的格式不太一样,例如gitosis导入的格式前面会带有一些头信息:
command="gitosis-serve temp",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

gitosis导入的公钥我粘贴到这里一个:

### autogenerated by gitosis, DO NOT EDIT
command="gitosis-serve andbibi@localhost.localdomain",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAypQpCz+IfPxefG0yAYKVmZhZYyd6Cq0VS/0TSTIU1gDwEz5wmcD6jaGhRqGM2Bp2vXCtFos5tP+Lh6k8/eR58sCE1/BS7Ect5o5+n3d5rR+Yla8euc5pwXoBtwTzLZ549aPv+tmDrBc1YnrXZ0nBwJKqcmRcF5y7zarqI7UIKBIcrNs71DLMsEg+4WHnR2dAY7LalDw1srP3AtiMYFZcsUjDgKFpBrnZsNyPfYIXSrW3ZU9tbdkISnLzIA1TnVrv4ubLc2qG6c9BKIGjPJRT9a+YAlS9BflVQwksCywi7ce3s3CQ3bwg9ylW78JBgLIRYIqSKozTxv8IckVSXNDwTw== andbibi@localhost.localdomain

 对比一下自己手动导入的,是不是不一样?

前面之所以要一直要用密码,全路径才能clone项目,就是因为服务器端的authorized_keys文件中手动导入了多个xxx.pub文件,,,,,把自己手动导入的全部删除,只留下gitosis程序生成的就可以了

关键的地方在于,gitosis会将你的xxx.pub的内容导入到git用户的.ssh/authorized_keys"文件,

gitosis导入的格式和通常的格式不太一样,例如

command="gitosis-serve temp",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

原文地址:https://www.cnblogs.com/vaer/p/4752693.html