如题,公司自家搭了git服务器,是不是要把公司每个开发者的ssh key加进来?
如果在git服务器上新建个仓库,其他人想向上提交代码,需要他们把自己的ssh key加进来么?
为什么以前在github上向别人的仓库贡献代码时不用在别人的github上加自己的ssh key,团队其他小伙伴向我仓库贡献代码也没加过他们ssh key
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
需要每个账号把自己的ssh key加进来
已经把ssh key加到自己账户里面的账号,向git服务器提交代码不需要再加进来,但需要有该项目的git权限。
你在github上贡献代码时,已经把自己的账号的ssh key加进去了吧,要不你也不能push代码。
综上,ssh + git 的远程代码提交方式是基于ssh协议完成的,每个拥有本地gitlab服务器账号的人都需要将个人电脑的ssh key加到gitlab上的账号里面,这样才能验证该人 clone 和 push 的账号。另外,gitlab上的一个项目,是需要设置权限的,private项目,具有如下角色:Guest, Reporter, Developer, Master。
最后,如果你想在同一台电脑里面同时配置 github 和 gitlab 的 ssh key,可以参考 一台电脑存放多个git账户的多个rsa秘钥
我们公司就是这样的,将本地的ssh key 上传到服务器就可以推送git 了
如果你是直接只安装了git,或者还安装了gitweb,这都不能很好的实现权限控制。
你可以在服务器安装gogs,通过它来进行权限控制。
不建议使用ssh key,因为权限应该是对人的,而不是对机器的。
为了实现鉴权。
一般的git服务器都有自己项目管理人员权限 和key没有关系 key只是解除认证
为什么以前在github上向别人的仓库贡献代码时不用在别人的github上加自己的ssh key,团队其他小伙伴向我仓库贡献代码也没加过他们ssh key
看你服务器用的什么软件,github向别人代码仓库贡献代码也是fork再提pull request,认证是github做了。
你给github提代码的时候就已经给个ssh key了。
第二个问题就depends 了
如果人特别多,不想把他们的ssh key(公钥)都加进来,服务器可以给一个组加一个,然后组内的开发者通用共同的私钥。