内部centos7搭建git服务器并添加多个用户到指定用户组

内部centos7搭建git服务器并添加多个用户到指定用户组

1.安装git
yum install git
git --version  查看版本
2.创建用户组
创建用户组:gitgroup

groupadd gitgroup
3.创建用户
创建用户:zhangsan

useradd zhangsan
passwd zhangsan

删除用户:userdel -r zhangsang  (比userdel zhangsan删除更干净)
4.把用户添加到指定用户组
把zhangsan添加到用户组gitgroup

usermod -a -G gitgroup zhangsan
5.新建一个项目
[root@sz home]# mkdir -p data/git/project_name.git     
[root@sz home]# git init --bare data/git/project_name.git
6.新项目指定用户组所有者
[root@sz home]# cd data/git/
[root@sz git]# chown -R git:gitgroup project_name.git/
7.修改目录和子文件权限
[root@sz git]# chmod -R 777 /home/data/git/
以上已经创建git项目并指定用户组和成员。以后需要增加成员,依照第3 、4步。
8.禁用git用户的shell登录,防止用户通过Git用户登录服务器。
vi /etc/passwd
内容:zhangsan:x:1005:1006::/home/qixiao:/bin/bash
改为:zhangsan:x:1005:1006::/home/zhangsan:/bin/git-shell

另外:
vi /etc/passwd  查看用户信息
vi /etc/shadow  查看用户密码信息
9.仓库的克隆
git clone git@xxx.xxx.xx.xx:/home/data/git/project_name.git  # 输入git用户密码
xxx.xxx.xx.xx 为 Git 所在服务器 ip
10.设置钩子同步代码到web文件目录
进入hooks文件
[root@sz]$  cd /home/data/git/project_name.git/hooks
[root@sz]$  cat > post-receive <<EOF
>#!/bin/bash
>git --work-tree=/home/project_code/v11 checkout -f
>EOF

下一步设定权限:
	chown git:git post-receive
	chmod +x post-receive

说明:git --work-tree=/home/project_code/v11 checkout -f 中的/home/project_code/v11为我要放web代码的位置。
代码若要其他位置则改为其他路径。
这里的钩子同步只是同步到git的同一台服务器上,同步到另外一台服务器,可以使用shell脚本再写或用Jenkins。
同时,需要把project_code文件的所属用户改为git及赋予权限,命令为:
chown git project_code/  及 chmod +x project_code/
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值