Files
wecom-ai-assistant/docs/github-config-guide.md
2026-02-05 16:36:32 +08:00

169 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# GitHub 配置文件使用指南
## 概述
项目已包含 GitHub 配置文件(`.github-config`),用于自动化 GitHub 操作。配置文件包含你的 GitHub 用户名、token 和仓库信息。
## 配置文件说明
### 文件位置
- **`.github-config`**:实际配置文件(包含敏感信息,**不提交到 Git**
- **`.github-config.example`**:配置模板(可提交到 Git
### 配置项说明
```bash
# GitHub 用户名/组织
GITHUB_USERNAME=bujie9527
# GitHub Personal Access Token
# ⚠️ 警告:此 token 具有仓库访问权限,请妥善保管!
GITHUB_TOKEN=your_token_here
# GitHub 仓库名称
GITHUB_REPO_NAME=wecom-ai-assistant
# GitHub 仓库完整 URL
GITHUB_REPO_URL=https://github.com/bujie9527/wecom-ai-assistant.git
# 默认分支
GITHUB_DEFAULT_BRANCH=main
# Container Registry 配置
GHCR_REGISTRY=ghcr.io
GHCR_IMAGE_PREFIX=bujie9527
# 镜像名称
BACKEND_IMAGE_NAME=wecom-ai-backend
ADMIN_IMAGE_NAME=wecom-ai-admin
```
## 快速使用
### 1. 初始化 GitHub 仓库
```powershell
# 使用配置文件自动设置 Git 远程仓库
.\scripts\setup-github-from-config.ps1
```
此脚本会:
- 检查并初始化 Git 仓库
- 配置 Git 用户信息(如果需要)
- 设置远程仓库地址
- 配置 Git 凭据(使用 token
- 创建初始提交(如果还没有)
### 2. 推送代码到 GitHub
```powershell
# 快速推送(使用默认提交信息)
.\scripts\push-to-github.ps1
# 自定义提交信息
.\scripts\push-to-github.ps1 -CommitMessage "Fix: 修复登录问题"
# 强制推送(危险操作)
.\scripts\push-to-github.ps1 -Force
```
### 3. 手动操作
如果不想使用脚本,也可以手动操作:
```powershell
# 添加远程仓库
git remote add origin https://github.com/bujie9527/wecom-ai-assistant.git
# 使用 token 推送(将 token 嵌入 URL
git remote set-url origin https://bujie9527:YOUR_TOKEN@github.com/bujie9527/wecom-ai-assistant.git
# 推送代码
git push -u origin main
```
## 安全注意事项
### ⚠️ 重要安全提示
1. **`.github-config` 文件已添加到 `.gitignore`**,不会被提交到 Git
2. **Token 安全**
- 不要将 token 分享给他人
- 不要在公开场合展示 token
- 如果 token 泄露,立即在 GitHub 上撤销并重新生成
3. **Token 权限**
- 当前 token 需要以下权限:
- `repo`:访问和修改仓库
- `write:packages`:推送 Docker 镜像到 GHCR
- `read:packages`:从 GHCR 拉取镜像
### 撤销和重新生成 Token
如果 token 泄露或需要更新:
1. 访问https://github.com/settings/tokens
2. 找到对应的 token点击 **Revoke**(撤销)
3. 点击 **Generate new token**(生成新 token
4. 选择权限:`repo`, `write:packages`, `read:packages`
5. 复制新 token 并更新 `.github-config` 文件
## 配置文件的使用场景
### 1. 本地开发
配置文件主要用于:
- 自动配置 Git 远程仓库
- 快速推送代码
- 本地脚本自动化操作
### 2. GitHub Actions
GitHub Actions workflow 使用 GitHub Secrets而不是配置文件
- 配置文件中的 token 用于**本地推送**
- GitHub Actions 使用 `GITHUB_TOKEN`(自动提供)或 `GHCR_TOKEN`(在 Secrets 中配置)
### 3. 生产部署
生产服务器上:
- 使用 SSH 密钥(不是 token进行部署
- 通过 GitHub Actions 自动部署
- 不需要在生产服务器上配置 token
## 常见问题
### Q: 配置文件在哪里?
**A**: 配置文件位于项目根目录:
- `.github-config`:实际配置文件(本地使用,不提交)
- `.github-config.example`:模板文件(可提交)
### Q: 如何更新配置?
**A**: 直接编辑 `.github-config` 文件,修改对应的值即可。
### Q: Token 在哪里获取?
**A**:
1. 访问https://github.com/settings/tokens
2. 点击 **Generate new token (classic)**
3. 选择权限:`repo`, `write:packages`, `read:packages`
4. 复制 token 并更新配置文件
### Q: 推送时提示认证失败?
**A**:
1. 检查 token 是否正确
2. 确认 token 权限包含 `repo`
3. 尝试重新运行 `.\scripts\setup-github-from-config.ps1`
### Q: 配置文件可以提交到 Git 吗?
**A**: **不可以**`.github-config` 包含敏感 token已添加到 `.gitignore`。只有 `.github-config.example`(模板)可以提交。
## 相关文档
- [GitHub 快速开始指南](./github-quickstart.md)
- [GitHub 完整设置指南](./github-setup-guide.md)
- [生产部署文档](./deploy.md)