1、在CentOS上安装git
1、安装git yum install git 2、查看git版本 git --version 3、创建一个git用户组和用户,用来运行git服务 groupadd git adduser git -g git passwd git
2、创建ssh证书登录
这里创建ssh证书,是在客户端创建,不是在服务端创建。
1、配置用户名和邮箱 git config --global user.name '你的名称' git config --global user.email '你的邮箱地址' 2、然后生成公钥和私钥 ssh-keygen -t rsa -C "你的邮箱地址" 选择ssh文件保存的路径,直接回车是默认路径,我选择默认路径,即最后一行显示的、 保存在了c盘中。 打开保存密钥的文件夹,找到id_rsa.pub文件,将此文件放到服务器上。 3、导入ssh证书 收集所有需要登录的用户的公钥,公钥位于id_rsa.pub文件中,把公钥导入/home/git/.ssh/authorized_keys文件里。 cd /home/git/ mkdir .ssh chmod 700 .ssh touch .ssh/authorized_keys chmod 600 .ssh/authorized_keys cat id_rsa.pub >> authorized_keys
3、初始化Git仓库
选定一个空目录作为仓库,这里选择/srv目录。执行命令: git init --bare test.git 更改仓库所有者和权限 chown -R git:git test.git /srv文件也需要修改为git用户才行,不然push的时候会报错没权限。 chown -R git:git /srv
4、禁止git帐号使用ssh登录
这里禁止的意义是为了服务器的安全性,避免从git的ssh可以直接登录服务器。 编辑/etc/passwd文件 找到 : git:x:1001:1001:,,,:/home/git:/bin/bash 改为 : git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell 可能用到的命令:修改ssh后,有可能需要重启ssh才能生效 SSH重启: service sshd restart SSH启动: service sshd start
5、克隆仓库
以上步骤都完成后,就可以试下把服务器的代码clone下来了。
git clone git@ip地址:/srv/test.git