宝塔面板Git代码管理:零基础用宝塔面板搭建Git代码仓库

前置准备


使用 宝塔面板Git代码管理 前,请确认以下条件已满足:



  1. 一台已安装宝塔面板(推荐Linux版,如CentOS 7/8、Ubuntu 20.04+)的服务器,面板版本建议9.0以上。

  2. 在宝塔面板中已创建好一个网站或站点目录(例如 /www/wwwroot/myproject)。

  3. 准备好一个Git远程仓库地址(如GitHub、Gitee或自建GitLab)。

  4. 在服务器开放端口:SSH端口(默认22)和面板端口(默认8888),确保网络可达。

  5. 确认服务器已安装Git(如果未安装,可通过 yum install git -yapt install git -y 安装)。


注意事项:如果使用的是Windows服务器的宝塔面板,操作流程类似,但命令需适配Windows环境,建议优先使用Linux服务器。

分步操作


第一步:在宝塔面板中安装Git



  1. 登录宝塔面板后台,点击左侧菜单 软件商店

  2. 在搜索框输入 git,找到 Git版本控制器(或 Git)点击安装。

  3. 如果软件商店里没找到,可以直接在服务器命令行执行安装命令:


# 以CentOS为例
yum install git -y

安装完成后验证版本

git --version


第二步:配置SSH密钥(可选但强烈推荐)


不用密码也能推送代码,使用SSH密钥更安全。



  1. 在服务器终端执行以下命令生成密钥(一路回车即可):


ssh-keygen -t rsa -b 4096 -C "youremail@example.com"


  1. 查看公钥并复制:


cat ~/.ssh/id_rsa.pub


  1. 登录你的Git远程仓库(如GitHub),进入 Settings → SSH and GPG keys → New SSH key,粘贴刚才复制的公钥并保存。


第三步:克隆仓库到站点目录


假设你的站点目录为 /www/wwwroot/myproject,执行:


cd /www/wwwroot

如果目录下有文件,先备份

git clone git@github.com:yourusername/your-repo.git myproject


克隆完成后,网站目录下就会出现项目文件。


第四步:设置Webhooks实现自动部署(进阶)


如果你的代码托管平台支持Webhooks,可以在宝塔中配合Git实现推送即更新。



  1. 在宝塔面板中,找到 计划任务(左侧菜单),添加一个 Shell脚本 任务。

  2. 执行周期选择 手动每分钟(用于测试),脚本内容如下(注意替换路径):


#!/bin/bash
cd /www/wwwroot/myproject
git pull origin main 2>&1


  1. 保存后,回到代码仓库后台,添加Webhook地址:



  • Payload URL: http://你的服务器IP或域名:8888/cron?n=任务ID(任务ID可在计划任务列表中找到)

  • Content type: application/json

  • Secret: 留空或自定义



  1. 触发事件选择 push,保存即可。之后每当推送代码,服务器会自动拉取最新版本。


注意:如果使用HTTPS克隆,需在命令中配置免密凭证(如 git config --global credential.helper store)或使用个人访问令牌(Token)代替密码。

避坑指南


报错1:Permission denied (publickey)

原因:SSH密钥未添加或未生效。检查公钥是否已添加到Git远程仓库,或尝试使用HTTPS克隆并配置令牌。


报错2:fatal: destination path 'myproject' already exists and is not an empty directory.

原因:目录非空。请先清空目录或使用 git clone 到新目录后移动文件。


报错3:Could not resolve host: github.com

原因:服务器DNS问题。可修改DNS为 114.114.114.1148.8.8.8,或检查网络连接。


报错4:Automatic merge failed; fix conflicts and then commit the result.

原因:本地和远程文件有冲突。建议先在本地合并并测试,再强制拉取(git pull --rebasegit fetch --all; git reset --hard origin/main 注意会丢失本地修改)。


误区:部分新手将项目文件直接在服务器编辑,然后 git push 但忘记先 git pull,导致冲突。

建议:服务器只做拉取(pull),代码编辑和推送统一在本地完成。


高频问题解答


问题1:宝塔面板自带的“Git”插件和系统Git命令有什么区别?

宝塔面板的Git插件是图形化界面,适合点选操作;系统Git命令更灵活、更新及时。新手建议先用宝塔插件体验,再学命令。如果插件找不到或版本低,直接用系统命令更可靠。


问题2:如何让宝塔面板网站目录自动显示最新代码?

最简单的方法:创建一个定时任务(每分钟或每5分钟)执行 git pull。但注意:频繁拉取会增加服务器负载。更好的方法是配置GitHub/Gitee Webhooks,只有推送时才触发拉取。


问题3:我不想暴露面板端口(8888)到公网,Webhooks还能用吗?

可以改用服务器自带Nginx反向代理,或者使用Git自带post-receive钩子。例如在服务器仓库的 .git/hooks/post-receive 中写入拉取脚本(要求是bare仓库,需额外设置)。新手建议先学习Webhooks方式。


效果验证


验证 宝塔面板Git代码管理 是否成功:



  1. 进入站点目录 /www/wwwroot/myproject,执行 git log --oneline -5,能看到最近的提交记录。

  2. 本地修改一个文件并提交推送(例如新建index.html),等待几秒后刷新服务器网站,看到新内容即成功。

  3. 如果配置了Webhooks,在代码仓库后台查看Webhook发送记录,状态为200表示成功。


如果你正在处理 宝塔面板Git代码管理,建议先按本文步骤完整执行,再根据自己的环境做微调;

遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
零基础也能远程管理服务器:宝塔面板手机APP运维全攻略
下一篇
零基础搞定Linux用户权限管理:从创建用户到精准授权全流程
1
系统公告

泽御云五一特惠活动🔥

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