diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index ee6c63a..36353f5 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -9,7 +9,7 @@ on: env: DOCKER_BUILDKIT: "1" PRODUCT_NAME: "xxxigcc" - PACKAGE_VERSION: "3.4.6-xg2" + PACKAGE_VERSION: "3.4.8-xg1" BUILDX_NO_DEFAULT_ATTESTATIONS: "1" jobs: diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..62c8935 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea/ \ No newline at end of file diff --git a/debian/build-deb.sh b/debian/build-deb.sh index d6a03df..0c5eb0c 100755 --- a/debian/build-deb.sh +++ b/debian/build-deb.sh @@ -4,7 +4,7 @@ set -e # 参数检查 if [ $# -ne 3 ]; then echo "Usage: $0 " - echo "Example: $0 amd64 3.4.6-xg2 xxxigcc-amd64-ubuntu-3.4.6-xg2.tar.gz" + echo "Example: $0 amd64 3.4.8-xg1 xxxigcc-amd64-ubuntu-3.4.8-xg1.tar.gz" exit 1 fi diff --git a/llmdoc/architecture/configuration-system.md b/llmdoc/architecture/configuration-system.md new file mode 100644 index 0000000..adb4864 --- /dev/null +++ b/llmdoc/architecture/configuration-system.md @@ -0,0 +1,61 @@ +# 配置系统架构 + +## 1. 身份 + +- **定义**:XXXigCC 配置管理系统 +- **目的**:为矿工和控制中心提供灵活、可动态调整的配置机制 + +## 2. 核心组件 + +- [script/install.sh](../../script/install.sh):配置生成和管理的核心逻辑 +- `/etc/miner/xxxigcc/config.json` 或 `/etc/xxxigcc/config.json`:主配置文件 +- 服务配置文件:定义服务启动参数 + +## 3. 执行流程 + +### 3.1 配置生成 +安装脚本动态生成配置: +- 使用 `jq` 命令行工具精确修改 JSON 配置 +- 支持命令行参数覆盖默认配置 + +### 3.2 配置应用 +- 创建配置文件 +- 使用 `replace_config()` 函数更新配置 +- 通过服务文件将配置传递给守护进程 + +## 4. 配置参数 + +### 4.1 日志配置 +- `log-file`:日志文件路径 +- `verbose`:是否启用详细日志 + +### 4.2 矿池配置 (pools 数组) +- `url`:矿池地址 +- `user`:钱包地址 +- `pass`:矿池密码 +- `tls`:是否启用 TLS +- `algo`:挖矿算法(默认 rx/0) +- `nicehash`:是否启用 NiceHash 模式 +- `keepalive`:是否保持连接 +- `daemon`:SOLO 挖矿模式 + +### 4.3 CPU 配置 +- `cpu.rx`:CPU 线程亲和性配置 +- `randomx.1gb-pages`:是否启用 1GB 大页内存 + +### 4.4 CC(控制中心)配置 +- `cc-client.enabled`:是否启用 CC +- `cc-client.servers[0].url`:CC 服务器地址 +- `cc-client.servers[0].access-token`:CC 访问令牌 +- `cc-client.servers[0].use-tls`:CC 是否使用 TLS + +### 4.5 捐赠设置 +- `donate-level`:捐赠级别(默认为 0) +- `donate-over-proxy`:是否通过代理捐赠 + +## 5. 设计原理 + +- 高度动态和可配置 +- JSON 格式,易于读写和程序解析 +- 支持细粒度配置,从矿池到 CPU 资源 +- 内置默认值,降低使用复杂性 diff --git a/llmdoc/architecture/installation-architecture.md b/llmdoc/architecture/installation-architecture.md new file mode 100644 index 0000000..ed38738 --- /dev/null +++ b/llmdoc/architecture/installation-architecture.md @@ -0,0 +1,43 @@ +# 安装架构 + +## 1. 身份 + +- **本质**:XXXigCC 的安装机制设计 +- **目的**:实现跨平台、高度可配置的软件部署 + +## 2. 核心组件 + +- [script/install.sh](../../script/install.sh):主安装脚本,处理下载、解压、配置和服务创建 +- [script/uninstall.sh](../../script/uninstall.sh):通用卸载脚本 +- [debian/build-deb.sh](../../debian/build-deb.sh):Debian 包构建脚本 + +## 3. 执行流程 + +### 3.1 版本选择 +- 支持指定版本或自动获取最新版本 +- 通过 Gitea Generic Package Registry 下载 + +### 3.2 依赖检查 +- 动态安装 curl、jq、file 等必要工具 +- 支持 apt-get 和 apk 包管理器 + +### 3.3 安装前准备 +- 检测操作系统(Alpine 或 Ubuntu/Debian) +- 识别系统架构(amd64/arm64) +- 卸载现有版本 + +### 3.4 软件部署 +- 下载并解压软件包 +- 设置执行权限 +- 创建配置文件 + +### 3.5 服务管理 +- 使用 OpenRC(Alpine)或 systemd(Ubuntu/Debian) +- 自动创建服务配置文件 +- 启用并启动服务 + +## 4. 设计原理 + +- **高度参数化**:通过命令行选项实现灵活配置 +- **跨平台兼容性**:适配不同 Linux 发行版 +- **自动化服务管理**:简化部署和运维流程 diff --git a/llmdoc/architecture/project-modifications.md b/llmdoc/architecture/project-modifications.md new file mode 100644 index 0000000..3e1695e --- /dev/null +++ b/llmdoc/architecture/project-modifications.md @@ -0,0 +1,61 @@ +# 项目修改架构 + +## 1. 身份定义 + +- **本质**:XMRigCC 项目的定制和去捐赠版本 +- **目的**:提供一个无捐赠、可集中管理的加密货币挖矿解决方案 + +## 2. 核心组件修改 + +### 修改文件 +- [init.sh](../../init.sh):项目修改脚本 +- `src/donate.h`:捐赠级别控制 +- `src/net/strategies/DonateStrategy.cpp`:捐赠策略重定向 +- `src/version.h`:版本和项目信息更新 + +## 3. 修改执行流程 + +### 3.1 项目重命名 +- 将 "xmrigcc" 重命名为 "xxxigcc" +- 更新可执行文件名称(xxxigServer、xxxigDaemon、xxxigMiner) +- 修改 CMakeLists.txt 中的项目名称 + +### 3.2 捐赠功能去除 +- 将默认捐赠等级 `kDefaultDonateLevel` 从 3 改为 0 +- 将最小捐赠等级 `kMinimumDonateLevel` 从 1 改为 0 +- 将捐赠服务器地址重定向到 `127.0.0.1` + - `donate.graef.in` → `127.0.0.1` + - `87.106.163.52` → `127.0.0.1` +- 禁用所有捐赠相关配置选项 + - `donate-level`: 3 → 0 + - `donate-over-proxy`: 1 → 0 + +### 3.3 版本信息更新 +- 移除原项目版权信息 +- 移除原项目 GitHub 链接 +- 更新项目标识为 XXXigCC + +## 4. 修改脚本 + +[init.sh](../../init.sh) 脚本使用 `sed` 命令批量修改源代码: + +```bash +# 修改项目名称 +sed -i 's/project(xmrigcc)/project(xxxigcc)/' CMakeLists.txt + +# 修改可执行文件名称 +sed -i 's/MINER_EXECUTABLE_NAME "xmrigMiner"/MINER_EXECUTABLE_NAME "xxxigMiner"/' CMakeLists.txt +sed -i 's/DAEMON_EXECUTABLE_NAME "xmrigDaemon"/DAEMON_EXECUTABLE_NAME "xxxigDaemon"/' CMakeLists.txt +sed -i 's/xmrigServer ${SOURCES_CC_SERVER}/xxxigServer ${SOURCES_CC_SERVER}/' CMakeLists.txt + +# 修改捐赠功能 +sed -i 's/kDefaultDonateLevel = 3/kDefaultDonateLevel = 0/' src/donate.h +sed -i 's/kMinimumDonateLevel = 1/kMinimumDonateLevel = 0/' src/donate.h +sed -i 's/donate.graef.in/127.0.0.1/' src/net/strategies/DonateStrategy.cpp +``` + +## 5. 设计原理 + +- **自动化修改**:通过脚本实现批量代码修改 +- **保留核心功能**:只修改捐赠相关代码,保持原项目架构和挖矿功能 +- **透明性**:所有修改通过 init.sh 脚本公开,易于审查 diff --git a/llmdoc/guides/how-to-configure-miner.md b/llmdoc/guides/how-to-configure-miner.md new file mode 100644 index 0000000..62e193e --- /dev/null +++ b/llmdoc/guides/how-to-configure-miner.md @@ -0,0 +1,226 @@ +# 如何配置挖矿节点 + +本指南说明如何配置 XXXigCC 挖矿节点(Daemon/Miner)。 + +## 配置文件位置 + +根据安装方式不同,配置文件位置如下: + +- **tar.gz 安装**:`/etc/miner/xxxigcc/config.json` +- **DEB 包安装**:`/etc/xxxigcc/config.json` +- **手动部署**:当前目录下的 `config.json` + +## 基本配置 + +### 1. 矿池配置 + +最基本的配置是设置矿池信息: + +```json +{ + "pools": [ + { + "url": "pool.example.com:3333", + "user": "YOUR_WALLET_ADDRESS", + "pass": "x", + "tls": false, + "keepalive": true, + "nicehash": true + } + ] +} +``` + +**参数说明:** +- `url`:矿池地址和端口 +- `user`:钱包地址 +- `pass`:矿池密码(通常为 "x") +- `tls`:是否启用 TLS 加密连接 +- `keepalive`:保持连接活跃 +- `nicehash`:NiceHash 兼容模式 + +### 2. 算法选择 + +```json +{ + "algo": "rx/0", + "pools": [...] +} +``` + +常用算法: +- `rx/0`:RandomX(Monero) +- `cn/0`:CryptoNight + +### 3. CPU 配置 + +#### 自动配置(推荐) +```json +{ + "autosave": true, + "cpu": true +} +``` + +#### 手动配置线程数 +```json +{ + "cpu": { + "enabled": true, + "max-threads-hint": 4 + } +} +``` + +#### 高级 CPU 配置 +```json +{ + "cpu": { + "enabled": true, + "max-threads-hint": 75, + "rx": [0, 1, 2, 3] + } +} +``` + +### 4. 日志配置 + +```json +{ + "log-file": "/var/log/xxxigcc/xxxigcc.log", + "verbose": true +} +``` + +## 高级配置 + +### 1. 大页内存(1GB Pages) + +提高挖矿性能: + +```json +{ + "randomx": { + "1gb-pages": true + } +} +``` + +**启用前需要设置系统:** +```bash +sudo sysctl -w vm.nr_hugepages=3 +``` + +### 2. SOLO 挖矿模式 + +```json +{ + "pools": [ + { + "url": "127.0.0.1:18081", + "daemon": true, + "self-select": "solo.example.com:3333" + } + ] +} +``` + +### 3. 集中化管理(CC)配置 + +连接到 CC 服务器: + +```json +{ + "cc-client": { + "enabled": true, + "servers": [ + { + "url": "http://server-ip:3344", + "access-token": "YOUR_ACCESS_TOKEN", + "use-tls": false, + "worker-id": "worker-01" + } + ] + } +} +``` + +### 4. 捐赠设置 + +XXXigCC 默认捐赠级别为 0: + +```json +{ + "donate-level": 0, + "donate-over-proxy": 0 +} +``` + +## 完整配置示例 + +```json +{ + "autosave": true, + "cpu": true, + "opencl": false, + "cuda": false, + "log-file": "/var/log/xxxigcc/xxxigcc.log", + "verbose": true, + "algo": "rx/0", + "pools": [ + { + "url": "pool.example.com:3333", + "user": "YOUR_WALLET_ADDRESS", + "pass": "x", + "tls": false, + "keepalive": true, + "nicehash": true + } + ], + "randomx": { + "1gb-pages": false + }, + "cc-client": { + "enabled": false + }, + "donate-level": 0 +} +``` + +## 应用配置 + +修改配置后需要重启服务: + +### Alpine Linux +```bash +rc-service xxxigcc restart +``` + +### Ubuntu/Debian (tar.gz) +```bash +systemctl restart xxxigcc +``` + +### Ubuntu/Debian (DEB) +```bash +systemctl restart xxxigcc-daemon +``` + +## 验证配置 + +### 检查配置文件语法 +```bash +jq . /etc/xxxigcc/config.json +``` + +### 查看运行状态 +```bash +systemctl status xxxigcc-daemon +journalctl -u xxxigcc-daemon -f +``` + +## 相关链接 + +- [配置文件参考](../reference/config-json-schema.md) +- [性能优化指南](how-to-optimize-performance.md) +- [集中化管理配置](how-to-connect-nodes-to-cc.md) diff --git a/llmdoc/guides/how-to-install-via-tarball.md b/llmdoc/guides/how-to-install-via-tarball.md new file mode 100644 index 0000000..555f1f3 --- /dev/null +++ b/llmdoc/guides/how-to-install-via-tarball.md @@ -0,0 +1,155 @@ +# 如何使用 tar.gz 安装 XXXigCC + +## 前提条件 + +- **支持的操作系统**:Alpine Linux 或 Ubuntu/Debian +- **架构**:x86_64 (amd64) 或 aarch64 (arm64) +- **必需工具**:curl(安装脚本会自动安装缺失的依赖) + +## 基本安装 + +### 1. 下载安装脚本 + +```bash +curl -O https://gitea.bcde.io/wangdefa/xxxigcc/raw/branch/main/script/install.sh +chmod +x install.sh +``` + +### 2. 运行安装 + +```bash +./install.sh -o pool.example.com:3333 -w YOUR_WALLET_ADDRESS +``` + +## 高级配置 + +### 常用参数 + +| 参数 | 说明 | 默认值 | +|------|------|--------| +| `-v, --version` | 版本号 | latest | +| `-t, --threads` | 线程数 | 自动 (CPU 核心数) | +| `-a, --algo` | 算法 | rx/0 | +| `-o, --pool` | 矿池地址 | **必需** | +| `-w, --wallet` | 钱包地址 | 自动生成 | +| `-p, --password` | 矿池密码 | 自动生成 | +| `--1gb-pages` | 启用 1GB 大页 | false | +| `--tls` | 启用 TLS | false | +| `--keepalive` | 启用 KeepAlive | false | +| `--daemon` | 启用 SOLO 挖矿 | false | +| `--nicehash` | 启用 NiceHash 模式 | true | +| `--verbose` | 启用详细输出 | true | + +### 配置示例 + +#### 指定版本和线程数 +```bash +./install.sh -v 3.4.6-xg1 -t 4 -o pool.example.com:3333 -w YOUR_WALLET +``` + +#### 启用高级功能 +```bash +./install.sh -o pool.example.com:3333 -w YOUR_WALLET \ + --1gb-pages \ + --tls \ + --keepalive +``` + +#### 启用 CC(集中化管理) +```bash +./install.sh -o pool.example.com:3333 -w YOUR_WALLET \ + --cc \ + --cc-url http://server:3344 \ + --cc-token YOUR_TOKEN +``` + +## 安装路径 + +tar.gz 安装后的文件路径: + +``` +/etc/miner/xxxigcc/ +├── config.json # 配置文件 +├── xxxigDaemon # 守护进程 +├── xxxigMiner # 挖矿程序 +└── xxxigcc.log # 日志文件 +``` + +## 服务管理 + +### Alpine Linux +```bash +# 查看状态 +rc-service xxxigcc status + +# 启动/停止/重启 +rc-service xxxigcc start +rc-service xxxigcc stop +rc-service xxxigcc restart + +# 查看日志 +tail -f /etc/miner/xxxigcc/xxxigcc.log +``` + +### Ubuntu/Debian +```bash +# 查看状态 +systemctl status xxxigcc + +# 启动/停止/重启 +systemctl start xxxigcc +systemctl stop xxxigcc +systemctl restart xxxigcc + +# 查看日志 +journalctl -u xxxigcc -f +``` + +## 升级版本 + +重新运行安装脚本,指定新版本: + +```bash +./install.sh -v 3.4.7-xg1 -o pool.example.com:3333 -w YOUR_WALLET +``` + +## 卸载 + +使用卸载脚本: + +```bash +curl -O https://gitea.bcde.io/wangdefa/xxxigcc/raw/branch/main/script/uninstall.sh +chmod +x uninstall.sh +sudo ./uninstall.sh +``` + +## 故障排查 + +### 检查服务状态 +```bash +# Alpine +rc-service xxxigcc status + +# Ubuntu/Debian +systemctl status xxxigcc +``` + +### 查看日志 +```bash +# Alpine / tar.gz +tail -f /etc/miner/xxxigcc/xxxigcc.log + +# Ubuntu/Debian +journalctl -u xxxigcc -f +``` + +### 手动测试 +```bash +/etc/miner/xxxigcc/xxxigDaemon -c /etc/miner/xxxigcc/config.json +``` + +## 相关链接 + +- [卸载指南](../../script/README.md#卸载脚本) +- [配置参考](../reference/config-json-schema.md) +- [服务管理](../architecture/installation-architecture.md#服务管理) diff --git a/llmdoc/index.md b/llmdoc/index.md new file mode 100644 index 0000000..06cb977 --- /dev/null +++ b/llmdoc/index.md @@ -0,0 +1,96 @@ +# XXXigCC 项目文档 + +欢迎来到 XXXigCC 项目文档!本文档系统为 LLM 优化,帮助您快速理解和使用 XXXigCC。 + +## 📖 文档结构 + +### Overview(概览) + +高层次的项目理解,回答"这个项目是什么?" + +- **[项目概览](overview/project-overview.md)**:项目目的、核心组件、技术特性 + +### Architecture(架构) + +系统的构建方式(LLM 检索地图),回答"它是如何工作的?" + +- **[安装架构](architecture/installation-architecture.md)**:安装机制的设计和执行流程 +- **[配置系统架构](architecture/configuration-system.md)**:配置管理系统的设计 +- **[项目修改架构](architecture/project-modifications.md)**:从 XMRigCC 到 XXXigCC 的修改内容 + +### Guides(指南) + +分步操作说明,回答"如何做 X?" + +- **[如何使用 tar.gz 安装](guides/how-to-install-via-tarball.md)**:tar.gz 包安装指南 +- **[如何配置挖矿节点](guides/how-to-configure-miner.md)**:挖矿节点的配置说明 + +### Reference(参考) + +详细的参考信息,回答"X 的具体细节是什么?" + +- **[编码规范](reference/coding-conventions.md)**:项目的编码约定 +- **[Git 规范](reference/git-conventions.md)**:Git 提交和分支约定 + +## 🚀 快速开始 + +### 我想了解项目 +1. 阅读 [项目概览](overview/project-overview.md) +2. 了解 [项目修改架构](architecture/project-modifications.md) + +### 我想安装 XXXigCC +1. 查看 [如何使用 tar.gz 安装](guides/how-to-install-via-tarball.md) +2. 参考 [安装架构](architecture/installation-architecture.md) 了解底层机制 + +### 我想配置挖矿 +1. 阅读 [如何配置挖矿节点](guides/how-to-configure-miner.md) +2. 参考 [配置系统架构](architecture/configuration-system.md) 深入理解 + +### 我想贡献代码 +1. 了解 [编码规范](reference/coding-conventions.md) +2. 遵循 [Git 规范](reference/git-conventions.md) +3. 阅读 [项目修改架构](architecture/project-modifications.md) + +## 🔍 核心概念 + +### 主要组件 +- **xxxigDaemon**:守护进程,管理挖矿任务 +- **xxxigMiner**:核心挖矿程序 +- **xxxigServer**:Web 控制中心(端口 3344) + +### 支持的平台 +- **操作系统**:Alpine Linux, Debian/Ubuntu +- **架构**:x86_64 (amd64), aarch64 (arm64) +- **安装方式**:tar.gz, Debian 包, Docker + +### 关键特性 +- ✅ 零捐赠模式(捐赠级别固定为 0) +- ✅ 集中化管理(CC) +- ✅ 多平台支持 +- ✅ 灵活的配置系统 + +## 📂 项目资源 + +- **主 README**:[../README.md](../README.md) +- **安装脚本**:[../script/](../script/) +- **Debian 构建**:[../debian/](../debian/) +- **修改脚本**:[../init.sh](../init.sh) + +## 🤝 原始项目 + +XXXigCC 基于以下开源项目: +- [XMRigCC](https://github.com/Bendr0id/XMRigCC):原始项目 +- [XMRig](https://github.com/xmrig/xmrig):核心挖矿引擎 + +## 📝 文档维护 + +本文档系统遵循以下原则: +- **Overview**:高层次概念理解 +- **Architecture**:LLM 检索地图,解释系统如何工作 +- **Guides**:实际操作步骤 +- **Reference**:详细参考资料 + +--- + +**生成时间**:2025-12-25 +**文档版本**:1.0 diff --git a/llmdoc/overview/project-overview.md b/llmdoc/overview/project-overview.md new file mode 100644 index 0000000..b06a553 --- /dev/null +++ b/llmdoc/overview/project-overview.md @@ -0,0 +1,54 @@ +# XXXigCC 项目概览 + +## 1. 项目目的 + +XXXigCC 是一个基于 XMRigCC 的去捐赠、集中化挖矿管理解决方案,专为 Linux 环境定制。主要目标是提供一个灵活、高度可配置的加密货币挖矿工具。 + +## 2. 核心组件 + +XXXigCC 由三个主要组件构成: + +1. **xxxigDaemon**:守护进程,负责管理挖矿任务和系统资源 +2. **xxxigMiner**:核心挖矿程序,执行实际的挖矿操作 +3. **xxxigServer**:Web 控制中心,通过端口 3344 提供集中管理界面 + +## 3. 技术特性 + +- **配置灵活**:完全基于 JSON 配置文件 +- **多平台支持**: + - 操作系统:Alpine Linux, Debian/Ubuntu + - 架构:x86_64 (amd64), aarch64 (arm64) +- **部署方式**: + - tar.gz 压缩包安装 + - Debian 包 (APT) 安装 + - 可选 Docker 容器部署 + +## 4. 与原始 XMRigCC 的关系 + +XXXigCC 是 XMRigCC 的定制分支,主要改动包括: + +- 完全禁用捐赠功能(捐赠级别设为 0) +- 重命名项目和可执行文件 +- 增强集中化管理能力 + +## 5. 关键特性 + +- 支持多矿池配置 +- 细粒度 CPU 资源控制 +- 安全的访问令牌和管理员凭据 +- 灵活的日志和监控选项 +- 跨平台 SOLO 挖矿支持 +- 动态配置更新 + +## 6. 配置管理 + +配置通过 `config.json` 和 `config_cc.json` 文件管理,支持: + +- 矿池地址和凭据 +- CPU 性能调优 +- 控制中心 (CC) 设置 +- 日志级别控制 + +## 7. 安装与部署 + +提供多种安装方式,使用 [script/install.sh](../../script/install.sh) 和 [script/install.deb.sh](../../script/install.deb.sh) 脚本,支持 Alpine 和 Debian/Ubuntu 系统。 diff --git a/llmdoc/reference/coding-conventions.md b/llmdoc/reference/coding-conventions.md new file mode 100644 index 0000000..6b7c8f9 --- /dev/null +++ b/llmdoc/reference/coding-conventions.md @@ -0,0 +1,46 @@ +# 编码规范 + +## Shell 脚本编码规范 + +### 基本规则 +- 所有 shell 脚本必须以 `#!/bin/sh` 或 `#!/bin/bash` 开头 +- 使用 `shellcheck` 进行代码质量检查 +- 脚本文件名使用小写,单词间用连字符或下划线连接(如 `install-deb.sh`, `build_deb.sh`) + +### 注释规范 +- 脚本开头必须包含简要注释,说明脚本用途 +- 复杂逻辑块需添加行内注释 +- 注释使用中文或英文,保持一致性 + +### 变量和函数 +- 变量名使用大写或小写,保持一致(如 `PACKAGE_NAME` 或 `package_name`) +- 局部变量使用 `local` 关键字 +- 函数名使用小写,单词间用下划线连接(如 `install_package`) + +### 错误处理 +- 使用 `set -e` 确保脚本遇到错误立即退出(可选) +- 对关键操作添加错误检查和异常处理 + +## 配置文件规范 +- 使用标准 JSON 格式 +- 配置文件名使用 `.json` 扩展名 +- 保持配置文件的可读性,使用合理的缩进 + +## 命名约定 +- 目录名:小写,单词间用连字符(`script-utils`) +- 文件名:小写,单词间用下划线或连字符(`install_script.sh`, `build-deb.sh`) +- 常量:全大写,下划线分隔 +- 变量:根据项目风格统一 + +## 文档编写规范 +- 使用 Markdown 格式 +- 文档标题使用 `#`、`##` 等级别 +- 保持文档简洁,重点突出 +- 包含必要的使用示例和说明 + +## 代码提交 +- 提交信息简洁明了 +- 使用简体中文描述修改内容 +- 遵循项目的 Git 提交规范 + +**注意:** 本规范为指导性文件,项目实践中可能有所调整。 diff --git a/llmdoc/reference/git-conventions.md b/llmdoc/reference/git-conventions.md new file mode 100644 index 0000000..0d567fc --- /dev/null +++ b/llmdoc/reference/git-conventions.md @@ -0,0 +1,47 @@ +# Git 约定 + +## 分支策略 + +- **主分支 (`main`)**: 稳定发布版本 +- **开发原则**: 直接在 `main` 分支上进行开发和提交 + +## 提交消息约定 + +### 提交消息格式 + +1. **语言**: 简体中文 +2. **风格**: 简洁明了的动作描述 +3. **常见前缀**: + - `添加`: 新增功能、文件或依赖 + - `修改`: 对现有代码的修改 + - `删除`: 移除代码、文件或功能 + - `修复`: 解决 bug + - `重构`: 代码重构,不改变功能 + +### 提交消息示例 + +``` +添加参数 +添加脚本 +添加 Tari Solo 支持 +添加 README +添加deb包构建,删除容器构建 +``` + +## 版本管理 + +- **版本号约定**: 遵循语义化版本 (SemVer) +- **标签**: 使用版本标签标记发布 + +## 工作流程建议 + +1. 直接在 `main` 分支上开发 +2. 提交前确保代码经过基本测试 +3. 编写清晰、描述性的提交消息 +4. 保持提交原子化,每个提交聚焦于单一任务 + +## 最佳实践 + +- 保持提交历史清晰 +- 避免提交大型文件和敏感信息 +- 定期进行代码审查