我想在我的专用服务器上创建公共git存储库,供任何人克隆,但它一直在问我git用户的密码。
我创建了没有密码的用户名为git。使用:
passwd -d git
不幸的是每次我尝试这样做:
git clone git @ myhost:myrepo.git
我被要求输入密码。
我尝试过设置sshd_config
Match user git
PermitEmptyPasswords yes
PasswordAuthentication yes
PasswordAuthentication
的是和否,但仍然没有用。
答案 0 :(得分:2)
似乎在ssh上做这件事是不可能的。除非您复制公钥,否则它将始终要求输入密码。
解决方案是使用git daemon
并通过git:// protocol
git clone git://hostname/directory
有关它的更多信息,我建议git help daemon
提示:
记住你需要给它读取权限。根据我设置其他人的经验:chmod -R o+r project.git
因某些原因无法工作。您必须通过作者或组允许git访问。您可以禁止在守护程序级别对您的repo进行写访问(默认行为)。
答案 1 :(得分:0)
与setup passwordless ssh login相同的过程。
生成一个passphase less private / public key pair
ssh-keygen <your-key-filename>
ssh-copy-id到您的主机服务器
在客户端.ssh文件夹下添加一个配置文件(注意:此步骤是可选的),配置文件的内容类似于以下内容:
Host <git-server>
Hostname <ip-of-your-git-server>
User <your-git-user-name>
Port <your-git-server-port>
IdentityFile <path-to-your-private-key>
尝试通过ssh登录您的主机:
ssh <git-server>
现在您可以克隆,推送,拉取任何内容到您的git-server
编辑:尝试谷歌“密码少ssh登录”获取更多细节和技巧。