我正在尝试为自己创建一个舒适的工作流程。我只是想知道当我在桌面上的存储库主分支中提交更改并将源推送到 GitHub 时,是否有任何方法可以自动从 GitHub 存储库部署到 Firebase 托管?
...可能使用“GitHub 操作”...
截至 2022 年 1 月 15 日,我发现有两种将网站文件部署到 Firebase 托管的方法。
firebase deploy
命令将文件推送到 firebase 托管。第一个很乏味,第二个不是我喜欢的。特别是因为我想要设置的工作流程不是太多面向 git,据我所知,我不使用“拉取请求”。我只是直接在主分支中提交更改。
(之所以如此,是因为我不是程序员,我只是想使用 Firebase 托管 + GitHub 存储库创建一个博客网站)
使用通过 GitHub 拉取请求部署到实时和预览通道。如果您使用 pull requests 来审查更改或者直接将提交推送到主分支,它将起作用。
我建议您使用拉取请求。这是一个很好的流程来仔细检查您的更改,并且通过 Firebase 操作,它将部署更改的临时预览,以便您可以验证所有内容看起来是否正确。
是的,您可以使用 GitHub Actions 自动将代码从 GitHub 部署到 Firebase Hosting。这是一个简单的设置指南:
创建 Firebase 项目: 如果您尚未创建 Firebase 项目,请在 Firebase 控制台创建一个 Firebase 项目。
设置 Firebase 托管: 在项目目录中,运行 firebase init 并按照提示设置 Firebase 托管。这将在您的项目中创建一个 firebase.json 文件。
生成 Firebase 令牌:
运行 firebase login:ci 以获取部署令牌。按照说明登录 Firebase 并复制生成的令牌。
转到您的 GitHub 存储库。 单击设置 > 秘密和变量 > 操作。 单击新建存储库机密。 将密钥命名为 FIREBASE_TOKEN 并粘贴您之前复制的 Firebase 令牌。
在您的项目目录中,创建一个名为 .github/workflows 的目录(如果尚不存在)。 在此目录中,创建一个名为 firebase-deploy.yml.
的文件添加工作流程配置:打开firebase-deploy.yml并添加以下代码:
部署到 Firebase 托管
在: 推: 分支机构: - 主要
工作: 部署: 运行:ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '14'
- name: Install Firebase CLI
run: npm install -g firebase-tools
- name: Deploy to Firebase Hosting
env:
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
run: firebase deploy --token "$FIREBASE_TOKEN"
提交并推送:保存 firebase-deploy.yml 文件,提交更改,并将其推送到 GitHub 存储库。
完成这些步骤后,每次您将更改推送到主分支时,GitHub Actions 都会自动将您的项目部署到 Firebase Hosting。此设置可确保您的部署保持一致,并避免您每次更新代码时都手动部署。