1、在服务器上生成公钥并查看公钥
ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com"
cat ~/.ssh/id_ed25519.pub
2、在仓库设置页面添加公钥并启用公钥
为什么要添加公钥
部署公钥允许以只读的方式访问仓库,主要用于仓库在生产服务器的部署上,免去HTTP方式每次操作都要输入密码和普通SSH方式担心不小心修改仓库代码的麻烦。
部署公钥配置后的机器,只支持clone与pull等只读操作。如果您想要对仓库进行写操作,请 添加个人公钥
3、服务器上切换到项目根目录,初始化git,设置git仓库地址
git init
git remote add origin 【仓库ssh地址】
4、在宝塔上安装 WebHook,并且添加脚本
添加脚本
if test $1 = 'pull'
then
echo "-----------------------------------------------"
echo '代码更新:' $(date '+%Y-%m-%d %H:%M:%S')
cd /data/www/wufu.wangqy.cn
sudo git pull origin master
echo "更新成功"
fi
注意:这里遇到一个问题
刚开始的脚本中有如下代码,导致 我这里每次提交代码后,在服务器上都会冲突。
这是因为变更权限导致的,权限变更后,git会认为文件发生了改变。
chown -R www:www ./
chmod -R 755 ./
查看密钥,链接
然后到仓库中设置 webhooks
注意在脚本中
if test $1 = 'pull'
$1 是链接中的 param ,需要和链接中的param 保持一致
比如我这里 $1 是 pull
所以链接就应该是:http://IP地址:端口/hook?access_key=EQ5d9EhNDGqoG1a5lkHc2YoMGsjsewDR02mqo¶m=pull
secret_token 是密钥
发布时间 : 2023-03-01,阅读量:3227 , 分类: Git