宝塔webhook git pull 提示权限异常


面板、插件版本: v11.0.0  、宝塔WebHook 2.5

系统版本:Ubuntu 24

问题描述

 

首次在服务器上部署宝塔后,在宝塔webhook中设置以下内容:

echo "-----------------------------------------------"
dirpath="/www/wwwroot/{path}"
echo "开始时间:" $(date '+%Y-%m-%d %H:%M:%S')
echo "当前执行用户是: $(whoami)"
echo '分支:develop'
echo "Git 版本:$(git --version)"
echo "当前目录:" $(pwd)
echo "切换到目录:" $dirpath  
cd $dirpath 2>&1
echo "拉取代码"
git pull origin develop 2>&1
echo "结束时间:" $(date '+%Y-%m-%d %H:%M:%S')

 

根据生成的密钥和链接 在git仓库环境中的webhooks中新建,来实现代码自动拉取的功能,一切很顺利。

然而在一次异常情况下,服务器重启了,一切都改变了,钩子触发后,在宝塔webhook中的日志里面,拉取代码操作报错了:

 

fatal: detected dubious ownership in repository at '/www/wwwroot/{path}'

To add an exception for this directory, call:

git config --global --add safe.directory /www/wwwroot/{path}

 

好吧,有报错信息,就可以根据异常来解决问题。

然后就是百度,AI提问,根据提示一步步排除

已排查项

1、脚本执行用户和设置安全目录的用户 是同一个用户

2、设置安全目录

3、git config --global --get-all safe.directory 查看已设置的目录

4、检查.git的权限

5、在宝塔控制台上重启服务器、重启面板

 

通过一系列操作,结果呢,还是报错依旧,没办法就去找客服,想多了!!!问题依旧没解决。

就这样一直持续了好久,拉取代码都是手动在服务器上的终端上手打命令:git pull origin develop

好麻烦啊!!! 有时候都回家好久了,突然让同步代码,但是没办法,拿起电脑操作吧。。。

 

运气使然!

面板密码要更新,在终端上执行:bt 出现宝塔提供的各种操作选项,修改完密码后,也看到了重启面板选项,抱着试试的态度。

重启后点击宝塔webhook面的的测试,没想到可以了,真是个大无语,问题解决了,但是过程真的是波折。

 

总结

在webhook执行git命令,如果出现权限问题,可以先根据上面排查项操作一下,

如果不可以,那就需要在终端通过命令行的方式 执行 bt restart 来重启宝塔,或者先执行bt后输入选项号来重启。

发布时间 : 2025-09-29,阅读量:6
本文链接:https://upwqy.com/details/1008.html
You probably don't mean to use the color value red in interpolation here.