gitserver服务器搭建以及代码自动更新

没有唯一   只有更牛逼


gitserver 搭建过程


1:添加一个用户                   useradd php

2:设置一个密码                   passwd  php   连续输入两次一样的密码

3:在任意文件夹里建一个文件夹     mkdir /phpGit(修改为php的用户组 和 用户)


4:进去/phpGit里   执行           git init --bare

小结: 在这里我们就可以进行克隆    git clone 用户名@ip:/phpGit.git


为了让用户 不用每次克隆 推送都需要密码 我们进行如下操作:

1:在本地执行   ssh-keygen -t rsa -C "youremail@example.com"  生成公钥私钥

2:在服务器端    cd /phpGit  创建.ssh 文件夹  然后进去.ssh  创建文件 authorized_keys

3: 把本地的.ssh/id_rsa.pub里的公钥放到服务器端的  authorized_keys里;

4:关键的一步:改权限 给phpGit 755   .ssh 755   authorized_keys 655

小结: 在这里我们就可以达到推送  克隆不需要输入密码的问题 可以尝试哦(很危险的一件事情是
       这时用ssh登陆也不用密码)


为了达到安全性  我们需操作如下  禁止用户登陆  只能克隆和推送

   vi /etc/passwd

   php:x:1001:1001::/home/php:/bin/git-shell


经过上边的一系列操作  就完成了gitserver 的搭建


我们进一步学习  如何让代码自动更新到我们php运行代码的根目录

运用自带的钩子实现  :  
  进入到/phpGit.git里  cp hooks/post-update.sample /phpGit.git/hooks/post-update

  打开post-update  清空 (用命令 :1,.d)
  加入如下脚本:
    #!/bin/bash
    cd /usr/share/nginx/html/phpGit    (这是php放代码的地方)
        unset GIT_DIR
        git checkout master
        git pull

这时基本大功告成:下边是需要修改一些权限 以及所属组问题

1:需要先看下 /home/php/.ssh用户所属组   应该是php php

2: 切换到php用户  执行 ssh-keygen -t rsa -C "youremail@example.com"  生成公钥私钥并把公钥放到authorized_keys中

3:(在php用户里)然后在 /usr/share/nginx/html/下  执行 git clone 用户名@ip:/phpGit.git

4:再把 html文件夹权限改成 777 再把php用户所属组改成root 命令:gpasswd -a 用户 所属组


 尽情的玩耍吧 gitserver!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yilukuangpao

你的鼓励是我创造最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值