社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
今天公司电脑系统坏掉了,在备份了C盘program fiels 文件夹和桌面文件夹后,直接把C盘格式化重新安装系统,随后在重新配置各开发工具时出了大问题。 C盘.ssh目录下的id_rsa 和id_rsa.pub文件永久丢失了,而这个id_rsa.pub 正是初始化gitosis的时候使用的公钥文件,ECLIPSE里面对所有项目的读写权限都没有了,也没有人能操作gitosis-admin这个项目了,哭!
先是在网上找解决方案,试了手动在git服务器上更改gitosis-admin.git 里面的gitosis.config文件,在gitosis-export 目录下新增从新生产的id-rsa.pub公钥文件,提交和拉取项目依旧无效,差点都想重新部署一边gitosis了
下面截图中 ,旧公钥 ivan.pub 新公钥alan.pub
1.进入repositories/gitosis-admin.git目录下:
2.在gitosis-export/keydir文件夹下加入自己新的id_rsa.pub公钥:
3.回到gitosis-admin.git目录,修改gitosis.conf文件,在管理员中加入新的公钥名称:
4.到了这里,大部分人觉得已经可以了,其实这个时候还不行,最后还有一步重要的操作,我们需要进入git账户的根目录下的.ssh 文件夹(这个.ssh是隐藏文件夹,在目录里面可能看不见直接输入目录地址进去就行了),编辑authorized_keys文件,添加一行 command="gitosis-serve ....",参考已有的数据行,改一下ssh-rsa后面的东西就行了(改成新的id_rsa.pub公钥),保存,大功告成!
现在新的id_rsa 公钥已经拥有和原公钥一样的权限了,我们可以使用这个公钥要clone gitosis-admin项目了 ,git clone git@服务器IP:gitosis-admin.git ,后面就只要在这个项目上面做修改并PUSH就可以控制权限啦。写完收工,大家还有什么疑问可以联系我952631256,我会尽力为大家解答,毕竟这个卵疼的问题我这边摸索了大半天。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!