git hook裸倉庫自動部署

1.在服務器上建立裸倉庫git

git init --bare

2.git裸倉庫鉤子在hooks/中
進入hooks中vim

$ cd git/hooks
$ touch post-receive && vim post-receive

在 post-receive文件中添加一下內容:服務器

#!/bin/sh
DEPLOY_PATH=/home/wwwroot/default/myproject/  #這個路徑是服務器上項目的目錄位置
unset  GIT_DIR #這條命令很重要
cd $DEPLOY_PATH
git reset --hard
git pull
chown root:root -R $DEPLOY_PATH

保存文件並修改權限:ssh

chmod +x post-receive

3.服務器上的項目目錄克隆git上的項目地址(用ssh地址,須要把服務器的上公鑰添加到git上)ide

4.在本身的電腦上,生成公鑰,在服務器的~/.ssh/authorized_keys 的文件中添加上你本地電腦的公鑰
5.在本地的倉庫中使用命令:post

git remote add server ssh://root@<服務器ip地址>/<服務器git目錄地址>

6.在本地修改好代碼後,提交到遠端,git push到master
7.執行git push server 遠端自動拉取代碼code

相關文章
相關標籤/搜索