mosdns/Gitea更新说明.md

295 lines
5.8 KiB
Markdown
Raw 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.

# 📦 推送到 Gitea 说明
## 🎯 您的 Gitea 仓库
**仓库地址**: https://git.ylcomm.cn/dengxiongjian/mosdns
**用户名**: dengxiongjian
---
## ✅ 已完成的准备工作
### 1. 文档链接已更新
所有文档中的占位符链接已替换为您的实际 Gitea 地址:
- ✅ README.md
- ✅ CHANGELOG.md
- ✅ 发布前检查清单.md
### 2. 新增的核心功能
本次更新包含以下重大功能:
#### 🛡️ 智能防污染系统
- `smart_fallback` 插件
- 自动检测 DNS 污染并切换上游
- 支持 CN IP 检测
#### 🎨 Web 管理界面
- Vue 3 + TypeScript 前端
- 实时监控和统计
- 可视化规则管理
- 配置在线编辑
#### 🔄 配置热加载
- `HotReloadManager` 模块
- 零停机更新配置
- 自动验证和回滚
#### ⚡ 一键部署
- `init` 命令
- 自动生成配置文件和目录
- 3 步快速启动
#### 🧠 智能拓扑排序
- 自动分析插件依赖
- 支持任意配置顺序
- 循环依赖检测
#### 📡 规则管理优化
- 智能文件名匹配
- 完整的 CRUD API
- Web 界面规则管理
---
## 🚀 推送步骤
### 方式 1: 使用自动脚本(推荐)
```bash
# 运行推送脚本
./推送到Gitea.sh
```
脚本会自动:
1. 检查并初始化 Git 仓库
2. 配置远程仓库
3. 添加所有文件
4. 提交更改
5. 推送到 Gitea
### 方式 2: 手动推送
```bash
# 1. 查看当前状态
git status
# 2. 添加所有文件
git add .
# 3. 提交
git commit -m "更新: YLTX-MosDNS v1.0.0 完整版
新增功能:
- 智能防污染系统
- Web 管理界面
- 配置热加载
- 一键部署
- 智能拓扑排序
- 完整的 RESTful API
详见 CHANGELOG.md"
# 4. 推送到 Gitea
git push -u origin main
```
---
## 📝 提交信息建议
```
更新: YLTX-MosDNS v1.0.0 完整版
新增功能:
- 🛡️ 智能防污染系统 (smart_fallback 插件)
- 🎨 Web 管理界面 (Vue 3 + TypeScript)
- 🔄 配置热加载 (HotReloadManager)
- ⚡ 一键部署 (init 命令)
- 🧠 智能拓扑排序 (自动依赖分析)
- 📡 规则管理优化 (CRUD API)
文档更新:
- README.md 完全重写,突出新功能
- 新增 CHANGELOG.md 详细更新日志
- 新增多份部署和使用指南
- 新增 Gitea 发布指南
Bug 修复:
- 修复拓扑排序算法错误
- 修复规则删除文件名匹配问题
- 修复构建脚本兼容性问题
详见 CHANGELOG.md
```
---
## 🔍 推送前检查
### 必须完成
- [x] 文档链接已更新为 Gitea 地址
- [x] .gitignore 已配置
- [ ] 编译测试通过
- [ ] 功能测试通过
- [ ] 敏感信息已删除
### 推荐完成
- [ ] 测试 init 命令
- [ ] 测试 Web UI
- [ ] 测试热加载功能
- [ ] 检查日志文件
---
## 📦 推送后操作
### 1. 在 Gitea 创建 Release可选
1. 访问: https://git.ylcomm.cn/dengxiongjian/mosdns
2. 点击 "发行版" 或 "Releases"
3. 点击 "新建发行版"
4. 填写信息:
- **标签**: `v1.0.0`
- **目标**: `main`
- **标题**: `YLTX-MosDNS v1.0.0 - 完整版`
- **描述**: 复制下面的 Release Notes
#### Release Notes
```markdown
## YLTX-MosDNS v1.0.0
基于 MosDNS v5 的增强版本,专注于智能防污染和易用性。
### 🌟 核心功能
- **🛡️ 智能防污染系统** - 自动检测 DNS 污染并切换上游
- **🎨 Web 管理界面** - Vue 3 可视化管理,无需编辑配置
- **🔄 配置热加载** - 零停机更新配置
- **⚡ 一键部署** - `init` 命令 3 步快速启动
- **🧠 智能拓扑排序** - 支持任意插件配置顺序
- **📡 规则管理优化** - 完整的 CRUD API
### 📦 下载
编译所有平台版本:
bash
bash build-all-platforms.sh <<< "A"
### 🚀 快速开始
bash
# 1. 下载并初始化
./mosdns-linux-amd64 init
# 2. 修改端口(可选)
sed -i 's/:53/:5310/g' config.yaml
# 3. 启动
./mosdns-linux-amd64 start -c config.yaml
访问 http://localhost:5555 进入 Web 管理界面
### 📚 文档
- [README](./README.md)
- [快速部署指南](./快速部署指南.md)
- [CHANGELOG](./CHANGELOG.md)
### 🙏 致谢
感谢 [@IrineSistiana](https://github.com/IrineSistiana) 创建的原始 MosDNS 项目。
```
### 2. 上传编译好的二进制文件(可选)
```bash
# 编译所有平台
bash build-all-platforms.sh <<< "A"
# 打包
cd dist/
tar -czf mosdns-linux-amd64-v1.0.0.tar.gz mosdns-linux-amd64
tar -czf mosdns-linux-arm64-v1.0.0.tar.gz mosdns-linux-arm64
zip mosdns-windows-amd64-v1.0.0.zip mosdns-windows-amd64.exe
tar -czf mosdns-darwin-amd64-v1.0.0.tar.gz mosdns-darwin-amd64
tar -czf mosdns-darwin-arm64-v1.0.0.tar.gz mosdns-darwin-arm64
# 在 Gitea Release 页面上传这些文件
```
---
## 🌐 团队使用
推送后,团队成员可以这样获取:
```bash
# 克隆仓库
git clone https://git.ylcomm.cn/dengxiongjian/mosdns.git
cd mosdns
# 初始化配置
./dist/mosdns-linux-amd64 init
# 启动服务
./dist/mosdns-linux-amd64 start -c config.yaml
```
---
## 📊 推送统计
推送到 Gitea 后,您将看到:
- **新增代码**: ~3,500 行 Go 代码
- **新增文档**: ~10 份 Markdown 文档
- **新增功能**: 6 个重大功能模块
- **Bug 修复**: 6 个关键问题
---
## ⚠️ 注意事项
1. **Web UI 资源**: 确保 `web-ui/dist/` 已构建
```bash
cd web-ui
npm install
npm run build
cd ..
```
2. **敏感信息**: 检查是否有配置文件包含密码
```bash
grep -r "password" *.yaml
```
3. **大文件**: Gitea 默认限制文件大小,避免提交编译产物
```bash
# .gitignore 已配置,但请确认
cat .gitignore | grep dist
```
---
## ✅ 完成清单
推送前最后确认:
- [x] Git 链接已更新
- [x] 推送脚本已创建
- [ ] 代码已测试
- [ ] 文档已检查
- [ ] .gitignore 已配置
- [ ] 准备好推送
**准备好了就运行**: `./推送到Gitea.sh`
---
🎉 **祝推送顺利!**