GIT 自动部署

1、现在服务器配置空仓库

mkdir -p test/project.git
chmod 777 test
cd test/project.git/
git init --bare .
cd ..
chown gituser:gituser -R project.git

2、再本地初始化仓库并且添加远程仓库

mkdir -p project
cd project
git init
git config user.email "wzp@
git add 1.txt
git commit -m "add 1.txt"
git remote add test git@192.168.0.1:/home/www/project.git //添加远程仓库还没有提交过,所以要先提交一次. test为远程命名,随意

3、设置钩子

在project.git/hooks目录下有很多脚本文件的示例
查看post-receive.sample文件是否存在如果存在
cp post-receive.sample post-receive
不存在
touch post-receive
sudo vi post-receive 
# 写入下面脚本
#内容开始
#!/bin/bash
 
#指定我的代码检出目录
DIR=/home/wwwroot/sowork/test #不能包含当前的目录,要另外一个目录
git --work-tree=${DIR} clean -fd
#直接强制检出
git --work-tree=${DIR} checkout --force
#内容结束
 
修改该文件所有者为git用户(上面安装git创建的用户)
sudo chown git:git post-receive
sudo chomd +x post-receive # 添加执行权限
 
然后当你push的时候就会将文件检出到你指定网站目录下
在git客户端push的话可以得到反馈,如果失败,可能是权限造成的

4、之后再本地提交之后就会自动部署到对应的网站目录

本文链接:

http://fonaix.com/1167.html
1 + 4 =
快来做第一个评论的人吧~