Files
BackupX/docs-site/i18n/zh-CN/docusaurus-plugin-content-docs/current/development/contributing.md
T
Awuqing c06bbec383 refactor: simplify architecture and harden lifecycle
Remove obsolete implementations, centralize background task ownership and terminal-state recovery, consolidate frontend routing and log streaming, and enforce project-wide verification in CI.
2026-08-26 11:32:00 +08:00

1.6 KiB
Raw Blame History

sidebar_position, title, description
sidebar_position title description
2 贡献指南 如何反馈问题、提出改进、提交 PR。

贡献指南

BackupX 使用 Apache License 2.0 开源,欢迎提交 Issue 与 Pull Request。

报告 Bug

github.com/Awuqing/BackupX/issues 提交 Issue,请附上:

  • BackupX 版本(backupx --version
  • 部署方式(Docker / 裸机 / 源码)
  • 相关的备份任务类型和存储后端
  • 复现步骤
  • 问题发生时段的 stdout / backupx.log 片段

提议改动

对于重要功能或重构,建议先开 Issue 对齐方案,避免 PR 大改动后被 Review 回退。

提交 PR

  1. Fork 仓库,创建主题分支(如 fix/windows-path-escape
  2. 执行 make verify,确认格式、测试、构建和文档检查全部通过
  3. 保持每个 PR 只做一件事
  4. Commit message 使用 Conventional Commits,主题使用中文:
    • feat(audit): 新增审计日志模块
    • fix(browser): 修复目录浏览器无法进入子目录
    • refactor(storage): 简化存储目标解密逻辑
    • 类型:feat / fix / docs / style / refactor / perf / test / chore
  5. PR 标题和正文同样使用中文,描述"为什么"和"怎么做",而非仅仅"做了什么"

代码规范

  • Go — 所有错误必须处理(禁止 _ = err),日志使用现有 zap,禁止生产路径中出现 fmt.Println
  • TypeScript — 严格模式,禁止隐式 any,并通过仓库中的 ESLint 和 Prettier 检查
  • Commit 粒度 — 每个 commit 一件事,不要把顺手的小修改和功能代码混在一起