git hooks实现项目自动部署
创建git用户
adduser git
创建裸仓库:
git init --bare GitBook.git
更改仓库所属用户和组:
chown -R git:git GitBook.git/
将本地PC秘钥添加到/home/git/.ssh/authorized_keys中,没有则创建
修改GItBook.git中的hook的post-receive文件
1 | #!/bin/sh |
更改文件用户:
chown -R git:git post-receive
更改文件权限:
chmod -R +755 post-receive
创建www文件:
git clone ../GitBook.git
更改权限和用户:
chown -R www-data:www-data gitBookRepo/
chmod -R 775 gitBookRepo/
在本地git clone:
git clone git@*.com:/var/GitBook.git
将隐藏文件.git复制到要commit的文件夹中,使用git即可将本地文件在远端发布
可能出现的问题:
1 | error: cannot open .git/FETCH_HEAD: Permission denied |