
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、之后再本地提交之后就会自动部署到对应的网站目录