[ PROMPT_NODE_24996 ]
deployment-patterns
[ SKILL_DOCUMENTATION ]
# Netlify 部署模式
Netlify 技能的常见部署场景与最佳实践。
## 部署决策树
用户是否已认证?
├─ 否 → 运行 `netlify login`
└─ 是 → 站点是否已链接?
├─ 否 → 是否为 Git 仓库?
│ ├─ 是 → 尝试 `netlify link --git-remote-url`
│ │ ├─ 成功 → 继续部署
│ │ └─ 失败 → 运行 `netlify init`
│ └─ 否 → 运行 `netlify init`
└─ 是 → 这是首次部署还是现有站点?
├─ 首次部署/新站点 → `netlify deploy --prod`
└─ 现有站点 → `netlify deploy` (预览)
## 场景 1:首次部署(新项目)
**上下文**:用户有一个从未部署到 Netlify 的项目。
**步骤**:
1. 检查身份验证:`npx netlify status`
2. 如果未认证:`npx netlify login`
3. 初始化新站点:`npx netlify init`
- 指导用户完成设置
- 必要时创建 netlify.toml
4. 安装依赖:`npm install`
5. 部署到生产环境:`npx netlify deploy --prod`
**示例**:
bash
npx netlify status
# 未链接到站点
npx netlify login
# 打开浏览器进行身份验证
npx netlify init
# 引导站点创建
npm install
npx netlify deploy --prod
## 场景 2:将现有 Git 仓库链接到现有站点
**上下文**:用户在 Netlify 上已有站点,并希望链接其本地仓库。
**步骤**:
1. 检查身份验证:`npx netlify status`
2. 获取 Git 远程地址:`git remote show origin`
3. 提取 URL (例如 `https://github.com/user/repo.git`)
4. 通过远程地址链接:`npx netlify link --git-remote-url `
5. 如果找到则链接成功。否则,运行 `netlify init`
**示例**:
bash
git remote show origin
# * remote origin
# Fetch URL: https://github.com/user/my-app.git
npx netlify link --git-remote-url https://github.com/user/my-app.git
# 站点链接成功
## 场景 3:预览部署(测试变更)
**上下文**:用户希望在推送到生产环境前测试变更。
**步骤**:
1. 确保站点已链接:`npx netlify status`
2. 进行代码变更
3. 部署预览:`npx netlify deploy`
4. 查看预览 URL
5. 如果通过,部署到生产环境:`npx netlify deploy --prod`
**示例**:
bash
# 进行代码变更
npx netlify deploy
# 草稿部署 URL: https://507f1f77bcf86cd799439011-my-app.netlify.app
# 测试预览,然后:
npx netlify deploy --prod
## 场景 4:框架特定部署
### Next.js
bash
# Next.js 通常使用 .next 作为输出
npx netli