宝塔面板Git代码管理:从零开始同步你的网站项目

为什么你需要用宝塔面板管理Git代码


如果你经常修改网站文件,手动通过FTP上传不仅慢,还容易漏传或覆盖错误。宝塔面板内置了Git客户端,配合远程仓库(比如GitHub、Gitee或私有GitLab),能实现一键拉取、自动同步代码。

这篇文章我用最笨的办法,带你从零配通。


第一步:准备仓库和SSH密钥


1. 准备好一个Git仓库


不管你是用GitHub还是国内的Gitee,先创建一个项目仓库,里面至少放一个 index.html 文件。

记下仓库的SSH地址(形如 git@github.com:你的用户名/仓库名.git),后面要用


2. 在宝塔面板生成SSH密钥


登录宝塔面板(地址 http://你的服务器IP:8888),点击左侧菜单“文件”,然后点击顶部“终端”。

输入以下命令:


ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"

一路回车,使用默认路径 ~/.ssh/id_rsa

生成完成后,查看公钥内容:


cat ~/.ssh/id_rsa.pub

复制屏幕上显示的一大段以 ssh-rsa 开头的文本。


3. 把公钥添加到远程仓库


回到GitHub(或Gitee),进入仓库 -> Settings -> Deploy Keys(部署密钥),点击“Add deploy key”。

Title可以写“宝塔面板”,Key里粘贴刚才复制的公钥,勾选“Allow write access”(允许写入),否则只能拉取不能推送。


避坑提示:很多新手忘了勾写入权限,后面推送修复时会报403错误。

第二步:在宝塔面板中添加Git仓库


1. 进入网站目录并拉取代码


假设你的网站根目录是 /www/wwwroot/example.com

在宝塔文件管理里选中这个目录,点右上角“Git”按钮(如果没有这个按钮,说明你的宝塔版本较老,需要升级到7.9以上或安装“Git”插件)。


点击“同步”选项卡,填入刚才的SSH地址,分支默认 master(或 main),点击“拉取”。

首次拉取会要求确认主机指纹,输入 yes 回车即可。


2. 配置自动同步(Webhooks)


为了让代码提交后自动更新服务器,需要设置Webhooks。

在仓库的设置页面找到“Webhooks”(GitHub是Settings -> Webhooks),添加一个钩子:



  • Payload URL:填写 http://你的域名或服务器IP:8888/hook?access_key=你的宝塔API密钥(API密钥在宝塔面板首页获取)。

  • Content type:选择 application/json

  • 触发事件:勾选“Push events”。


保存后,每次你向远程仓库推送代码,宝塔就会自动拉取最新版本到网站目录。


第三步:常见问题与避坑说明


Q1:拉取时报 Permission denied (publickey)


原因:

SSH密钥没有添加到仓库(或者仓库地址写成了HTTPS)。解决办法

重新检查公钥是否粘贴正确,

并且确保在宝塔终端用 ssh -T git@github.com 测试连通性,

看到 “You've successfully authenticated” 才代表密钥生效。


Q2:Webhooks自动同步不生效


首先确认宝塔面板能正常访问外网(特别是GitHub)。

其次,在宝塔面板“计划任务”里添加一个测试的curl命令:


curl http://你的域名:8888/hook?access_key=你的API密钥 --data '{}'

查看返回结果有没有错误提示。

常见原因是API密钥写错,或域名解析指向错误IP。


Q3:本地修改与远程冲突


如果你在服务器上直接改了文件,然后又从远程拉取,就可能冲突。推荐做法:把宝塔当做只读拉取端,所有修改都在本地电脑完成再推送。

迫不得已需要手动解决冲突时,可以在宝塔终端用 git status 查看冲突文件,编辑后 git addgit commit


第四步:验证效果



  1. 在本地电脑修改仓库里的 index.html,提交并推送到远程。

  2. 稍等30秒,刷新你的网站页面,看内容是否更新。

  3. 也可以登录宝塔面板,进入网站目录,右键空白处选“Git”,窗口里会显示最新的提交记录。


一步到位小技巧

在宝塔计划任务中添加一个每分钟执行的脚本,

内容为 cd /www/wwwroot/your-site && git pull origin master

不用Webhooks也能定时同步,

适合不想折腾API的新手。


写在最后


如果你正在处理宝塔面板Git代码管理,建议先按本文步骤完整执行一遍。

遇到异常时,优先检查SSH密钥是否配对、仓库地址是否带“git@”前缀、以及宝塔面板插件是否已安装。

熟练之后,你可以用Git分支、.gitignore 等进阶功能进一步规范项目。

只要走通一次,后面会越来越顺。

分享到:
上一篇
从零开始:手把手教你完成服务器堡垒机搭建
下一篇
WordPress集成AI写作:WordPress网站集成A
1
系统公告

泽御云五一特惠活动🔥

泽御云持证合规运营,资质齐全可查,长久稳定! 五一限时多重福利同步开启: ✅ 香港 2 核 2G 云服务器超值拼团,低价入手团长免费 ✅ 4 核 4G 多机房年付拼团,性价比拉满 ✅ 内蒙古新区限时 7 折(zeyuyunnmg)特惠,专属优惠码锁价续费 ✅ 全站通用 75 折优惠,老用户充值享专属赠金 官方站点:zeyuyun.com 合规资质齐全|售后有保障|活动限时错过不再有
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意