You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将GitHub的dist文件夹同步至DirectAdmin并完成部署配置?

配置GitHub私有仓库与DirectAdmin同步的完整流程

一、让DirectAdmin拉取GitHub私有仓库内容

用SSH密钥(推荐,无需反复输入密码)

  1. 打开DirectAdmin的Git控制台,生成SSH密钥对,复制生成的公钥(开头为ssh-rsa的字符串)。
  2. 登录你的GitHub私有仓库,进入「Settings」→「Deploy keys」,点击「Add deploy key」,粘贴刚才的公钥,勾选「Allow write access」(若需要向仓库推送内容则勾选,只读同步可忽略),完成保存。
  3. 返回DirectAdmin Git控制台,仓库地址填写SSH格式:git@github.com:你的用户名/仓库名.git,指定要同步到的本地目录(比如网站根目录),点击「Clone」或「Pull」测试,正常即可拉取仓库内容。

用HTTPS令牌(适合不想折腾SSH的场景)

  1. 登录GitHub,进入「Settings」→「Developer settings」→「Personal access tokens」→「Generate new token」,勾选「repo」权限(私有仓库读写必备),生成后复制令牌(仅显示一次,务必妥善保存)。
  2. 在DirectAdmin Git控制台,仓库地址填写HTTPS格式:https://github.com/你的用户名/仓库名.git,用户名填GitHub账号名,密码填刚才生成的个人访问令牌(不是GitHub登录密码),设置同步目录后测试拉取。

二、本地dist文件夹同步到GitHub再自动同步到DirectAdmin

第一步:本地仅提交dist文件夹到GitHub

若本地项目未关联GitHub仓库:

  • 先初始化仓库并关联远程地址:
    git init
    git remote add origin git@github.com:你的用户名/仓库名.git # 也可使用HTTPS地址
    
  • 在项目根目录创建.gitignore文件,内容如下:
    *
    !dist/
    !.gitignore
    
    此配置仅将dist文件夹和.gitignore提交至仓库,其余文件均被忽略。
  • 提交并推送内容:
    git add dist/ .gitignore
    git commit -m "更新dist文件"
    git push origin main # 替换为你的实际分支名
    

第二步:让DirectAdmin自动同步GitHub的更新

若你的DirectAdmin版本支持Webhook:

  1. 在DirectAdmin Git控制台找到「Auto-Deploy」或「Webhook」选项,复制提供的Webhook地址。
  2. 返回GitHub仓库,进入「Settings」→「Webhooks」→「Add webhook」,Payload URL填写刚才复制的地址,Content type选择application/json,仅勾选「Just the push event」,完成保存。
    此后每次你本地推送dist到GitHub,DirectAdmin会自动拉取最新内容到指定目录。

若无Webhook功能,可使用定时脚本实现自动拉取:

  • 在DirectAdmin的Shell中创建git_pull.sh脚本:
    #!/bin/bash
    cd /你的同步目录完整路径
    git pull origin main
    
  • 给脚本添加执行权限:chmod +x git_pull.sh
  • 配置cron任务,例如每小时执行一次:0 * * * * /脚本的完整路径/git_pull.sh

内容的提问来源于stack exchange,提问作者scorpawe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 00:51:07