centos, nginx, php
生产目录全站【git.config.filemode = false】
chown www:www -R /home/wwwroot/websit
www用户下生成密钥并上传公钥
shell命令无需另加sudo等
需要至少1次以www用户执行git pull并缓存账号
需要加 unset GIT_DIR命令
cd /home/wwwroot/website/ && unset GIT_DIR && git pull origin master
2020年7月13日 回头再看,这个方案是用php执行git pull命令,由于运行php的 账户时www账户,所以保证能手动用www用户执行git pull无报错, web_hook就跑起来了
所以遇到的问题的解决方法无非就是用www跑程序的问题,不提权的情况下,www要有整站目录、日志文件的读写权限,git服务器处存有www用户公钥等
发表评论: