下面从如下几个方面介绍下其部署及应用:
Git服务器搭建
Git客户端搭建
Git常用命令
Git服务器搭建
Linux服务器搭建(Centos7.5):
一、安装配置SSH(参考XXX)
二、检查OS是否自带Git
1、git-version //查询版本
2、rpm -qa git //查询git详细信息
3、yum -y remove xxx //删除存在的git
三、新安装Git
1、cd /home //切换到home目录
2、mkdir /git //新建git目录
3、cd /home/git //切换到新建git目录下
4、yum -y install git //安装git
四、服务器端配置git
1、groupadd gitgrp //创建git用户组,gitgrp
2、useradd -m -g gitgrp gituser //创建用户gituser,隶属于用户组gitgrp
3、passwd gitpwd //设置用户密码 gitpwd
4、chmod 755 /home/git //修改/home/git目录权限
5、su gituser //切换到gituser用户
6、cd /home/git //切换到git所在目录
7、mkdir .ssh && chmod 700 .ssh //创建.ssh文件,并赋予操作权限
8、touch .ssh/authorized_keys && chmod600 .ssh/authorized_keys //创建公钥存储文件authorized_keys文件并赋予权限
五、服务器端创建git仓库
1、mkdir /home/git/repository //新建仓库目录
2、git init --bare/home/git/repository/gitrptest.git //创建仓库gitrptest.git
3、chown -R gitgrp:gituser /home/git/repository/gitrptest.git //将用户组及用户授权访问仓库gitrptest.git
六、安全处理
1、禁用gituser的ssh登录(若不禁用,加入公钥列表的用户,都能直接访问服务器,如:ssh gitsuer@ip
1)、nano /etc/passwd //打开密码文件
2)、按pagedown(PgDn)翻到下面,找到git:账户
3)、修改git用户权限
git:x:1001:1001:,,,:/home/git:/bin/bash 修改为:git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
七、客户端创建公钥
1、例如window下使用cmd、powershell、git bash里都可以执行,推荐git bash(在任意空白处右键,点击Gitbash here)
ssh-keygen -trsa //执行命令生成本地公钥
2、在用户/xxx(当前系统用户)/.ssh下有两个文件 id_rsa 和id_rsa.pub, 后面这个就是新生成的公钥
八、上传公钥到服务器并加入服务器公钥文件内(authorized_keys)
1、将刚创建的本地公钥文件id_rsa_pub文件copy到git服务器localrsa目录
scpid_rsa_put gituser@ip:/home/git/localrsa (弹出窗口按提示输入yes gituser的密码, 即可上传到服务器)
2、在服务器端追加刚上传的本地公钥文件到authorized_keys
cat /home/git/localrsa/id_rsa_pub >> /home/git/.ssh/authorized_keys
3、可以查看服务器公钥文件内容
1)、使用vi查看,具体操作自行查找
2)、head -n x /home/git/authorized_key //查看文件前x行内容, x为具体数量
九、团队权限管理
Git是为了管理Linux的源代码而开发的,延续了开源精神,所以没有提供权限管理,但提供了hook,可以直接控制git操作,做到权限管理。
下面有几种方式可以实现权限管理:
1、收集客户端公钥:共用gituser(这种方式使用简单,但不能做到实际的权限管理)