Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,17 @@
1. 从默认分支 `development` 创建工作分支,保持每个 PR 聚焦一个问题。
2. 填写自动加载的 PR 模板,说明行为变化、主要改动、兼容影响和实际验证结果。
3. 完整解决 Issue 时填写 `Closes #编号`;只完成部分工作时使用 `Refs #编号`。
4. UI 改动附前后截图;涉及持久化、SSH 或桌面更新时,记录相关回归验证。未验证的平台或场景需要明确列出。
4. UI 改动在 Wiki 验收记录中附前后截图,PR 中引用对应页面或图片;涉及持久化、SSH 或桌面更新时,记录相关回归验证。未验证的平台或场景需要明确列出。
5. 填写“设计文档(Wiki)”,并在 Wiki 页面补充 Issue / PR 反向链接;不需要独立设计文档的小改动注明原因。

PR 标题和提交信息须遵守 Conventional Commits,使用 `feat: ...`、`fix: ...`、`perf: ...`、`refactor: ...`、`docs: ...` 或 `chore: ...` 等格式;本地 hook 和 CI 会执行校验。完整提交规范、Git hooks 和 Release 说明生成流程见 [CONTRIBUTE.md](../CONTRIBUTE.md),开发和测试命令见[项目 README](../README.md)。

## 维护设计文档

[GitHub Wiki](https://github.com/ShaoClean/remote-git/wiki) 是功能、优化及缺陷修复设计的统一入口。使用 [设计模板](https://github.com/ShaoClean/remote-git/wiki/Design-Template) 新建 `Issue-<编号>` 页面;较长验收记录可拆为 `Issue-<编号>-Validation`。内容包括背景、目标、方案、验收标准、关联 PR 和实际验证结果。

新增或更新页面时,同步维护 [功能设计索引](https://github.com/ShaoClean/remote-git/wiki/Feature-Designs) 或 [缺陷修复索引](https://github.com/ShaoClean/remote-git/wiki/Bugfix-Designs),在 Issue / PR 正文填写完整 Wiki 链接。图片和附件存放在 Wiki 仓库的 `assets/issue-<编号>/`,检查页面、图片和附件可访问。PR 审阅时附 Wiki 修订链接或 commit SHA,完整操作见 [Wiki 维护约定](https://github.com/ShaoClean/remote-git/wiki/Contributing)。

没有 Wiki 写权限时,可先在 Issue / PR 中提供草案与附件,由维护者整理后补充链接。运行、开发、发布及现行配置说明、测试必需的 fixtures 留在代码仓库;设计文档、验收记录及截图不再在主仓库保留完整副本。已迁移资料的旧路径对应关系见 [迁移清单](https://github.com/ShaoClean/remote-git/wiki/Migration-25)。

公开日志与截图请先脱敏,避免提交真实数据库、私人服务器地址、SSH 密码、私钥和访问令牌。
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,3 +84,9 @@ body:
attributes:
label: 补充资料
description: '可选。说明首次出现的版本、临时绕过方法和相关 Issue;根因推测请注明。'
- type: input
id: design_wiki
attributes:
label: 设计文档(Wiki)
description: '可选。已有设计请填写 Wiki 页面链接;暂无设计可留空,由维护者按 Issue 编号创建并补充反向链接。约定见 https://github.com/ShaoClean/remote-git/wiki/Contributing 。'
placeholder: 'https://github.com/ShaoClean/remote-git/wiki/Issue-<编号>'
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,9 @@ body:
attributes:
label: 补充资料
description: '可附脱敏截图、草图、关联 Issue、文档及当前应用版本。'
- type: input
id: design_wiki
attributes:
label: 设计文档(Wiki)
description: '可选。已有设计请填写 Wiki 页面链接;暂无设计可留空,由维护者按 Issue 编号创建并补充反向链接。约定见 https://github.com/ShaoClean/remote-git/wiki/Contributing 。'
placeholder: 'https://github.com/ShaoClean/remote-git/wiki/Issue-<编号>'
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/optimization.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,9 @@ body:
attributes:
label: 补充资料
description: '可附脱敏日志、截图、已有排查结论及关联 Issue。'
- type: input
id: design_wiki
attributes:
label: 设计文档(Wiki)
description: '可选。已有设计请填写 Wiki 页面链接;暂无设计可留空,由维护者按 Issue 编号创建并补充反向链接。约定见 https://github.com/ShaoClean/remote-git/wiki/Contributing 。'
placeholder: 'https://github.com/ShaoClean/remote-git/wiki/Issue-<编号>'
5 changes: 5 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@

<!-- 列出有助于审阅的主要改动、设计取舍和范围;UI 变更请附前后截图。 -->

## 设计文档(Wiki)

<!-- 填写 https://github.com/ShaoClean/remote-git/wiki/Issue-<编号>,并附页面修订链接或 Wiki commit SHA。方案、验收记录、截图及附件统一维护在 Wiki,页面需反向关联本 PR 和 Issue,并加入分类索引;没有独立设计文档时注明“不适用”及原因。维护约定:https://github.com/ShaoClean/remote-git/wiki/Contributing -->

## 验证

<!-- 填写实际执行的命令或手动步骤、运行环境与结果。区分通过、失败、未运行;未运行请说明原因。 -->
Expand All @@ -34,4 +38,5 @@
- [ ] 已自查差异,变更范围与关联 Issue 一致。
- [ ] 已记录必要验证的实际结果及未验证项。
- [ ] 已更新相关文档;不适用时已注明。
- [ ] 已更新 Wiki 设计 / 验收记录、分类索引及 Issue / PR 双向链接;不适用时已注明。
- [ ] 代码、日志与截图不包含密码、私钥或访问令牌。
6 changes: 6 additions & 0 deletions CONTRIBUTE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@

RemoteGit 使用 Conventional Commits 描述变更,commitlint 校验提交信息,git-cliff 按提交记录生成中文 Release 说明。版本号和发布时机由维护者决定,推送稳定版本 tag 后由 GitHub Actions 构建和发布。

## 设计文档与验收资料

功能、优化及缺陷修复设计统一维护在 [GitHub Wiki](https://github.com/ShaoClean/remote-git/wiki),包括方案、验收记录、截图和附件。页面按 `Issue-<编号>` 命名,在 Wiki、Issue 和 PR 之间补充双向链接;新增页面使用 [设计模板](https://github.com/ShaoClean/remote-git/wiki/Design-Template),并更新对应分类索引。维护流程、附件路径与修订记录要求见 [Wiki 维护约定](https://github.com/ShaoClean/remote-git/wiki/Contributing)。

本指南、README、现行配置说明及测试必需的 fixtures 继续随代码维护。历史资料的原路径与新入口见 [迁移清单](https://github.com/ShaoClean/remote-git/wiki/Migration-25);不要将 Wiki 文档和配套附件的完整副本重新提交到主仓库。Wiki 使用独立 Git 历史,代码 PR 中应提供页面链接及被审阅的 Wiki 修订,代码回退时需单独核对文档。

## 初始化开发环境

使用 Node.js 22.12+ 和 npm;CI 固定为 Node.js 22.22.0。首次进入仓库执行 `npm ci`。
Expand Down
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@

提交规范、Git hooks、PR 检查和 Release 说明生成流程见 [CONTRIBUTE.md](CONTRIBUTE.md)。

功能、优化与缺陷修复的设计、验收记录及配套附件统一维护在 [GitHub Wiki](https://github.com/ShaoClean/remote-git/wiki):[功能设计索引](https://github.com/ShaoClean/remote-git/wiki/Feature-Designs)、[缺陷修复索引](https://github.com/ShaoClean/remote-git/wiki/Bugfix-Designs)。新增文档按 Issue 编号组织,并在 Issue / PR 中补充双向链接,详见 [Wiki 维护约定](https://github.com/ShaoClean/remote-git/wiki/Contributing)。运行、配置、开发和发布所需的基础说明继续保留在代码仓库;旧资料入口见 [迁移清单](https://github.com/ShaoClean/remote-git/wiki/Migration-25)。

## 开发与打包

开发环境使用 Node.js 22.12+ 和 npm。首次构建需要下载 Electron 和原生依赖;原生模块没有预编译包时,需要系统 C++ 编译工具(macOS:Xcode Command Line Tools;Windows:Visual Studio C++ Build Tools 和 Python;Linux:编译工具链和 Python)。
Expand Down Expand Up @@ -37,7 +39,7 @@ npm run desktop:test # 构建后执行桌面集成测试

在“AI 服务商”中配置并启用服务商和模型,再在“提交生成”中保存默认模型。提交摘要右侧的星光按钮只分析已暂存改动,一次填入摘要和描述,支持取消、重试及撤销;最终提交仍由用户操作。默认使用简体中文 Conventional Commits。

支持 OpenAI、Anthropic、Gemini、DeepSeek,以及三个协议的多个自定义服务。API Key 在设置页手动输入并加密保存,无需配置环境变量;桌面版使用系统密钥存储,独立服务自动管理本机加密密钥。配置与限制见 [AI 设置说明](docs/ai-settings.md),截图与验证记录见 [Issue #21 验收](docs/validation/issue-21/README.md)。
支持 OpenAI、Anthropic、Gemini、DeepSeek,以及三个协议的多个自定义服务。API Key 在设置页手动输入并加密保存,无需配置环境变量;桌面版使用系统密钥存储,独立服务自动管理本机加密密钥。配置与限制见 [AI 设置说明](docs/ai-settings.md),截图与验证记录见 [Issue #21 验收](https://github.com/ShaoClean/remote-git/wiki/Issue-21-Validation)。

## GitHub 版本更新

Expand Down Expand Up @@ -109,10 +111,10 @@ Linux CI 的桌面测试使用 `xvfb-run -a`。测试中的模拟更新适配器

新建文件无需暂存即可查看相对空版本的差异,支持统一、分栏和放大查看。暂存后再次编辑的文件会同时出现在“已暂存”和“未暂存”分组,分别显示暂存内容与后续工作区改动;没有首次提交的仓库也可暂存、取消暂存和预览。

空文件显示“新增空文件”,二进制文件和无法读取的文件有明确反馈。预览支持 UTF-8 文本,新增文件/暂存内容及差异输出限制为 1 MiB,差异补丁最多 10,000 行;超限时显示提示。预览不写入文件或暂存区。验证范围和结果见 [新增文件差异预览验收](docs/validation/issue-18/README.md)。
空文件显示“新增空文件”,二进制文件和无法读取的文件有明确反馈。预览支持 UTF-8 文本,新增文件/暂存内容及差异输出限制为 1 MiB,差异补丁最多 10,000 行;超限时显示提示。预览不写入文件或暂存区。验证范围和结果见 [新增文件差异预览验收](https://github.com/ShaoClean/remote-git/wiki/Issue-18-Validation)。

工作区侧栏与改动列表支持拖动调宽,也可从“布局设置”使用滑块调整或恢复默认。分隔线支持方向键、Shift 加速和 Home / End;`Cmd/Ctrl + \` 开关侧栏。布局偏好在本机保存,保留现有工作区树的展开与排序设置。

窄窗口选择文件或提交后进入检查器,使用“返回列表”继续操作。提交摘要和描述在本次页面会话内按仓库保留;刷新页面会清空草稿。

界面截图、验证结果和测试环境说明见 [工作区布局验收](docs/validation/issue-6/README.md)。
界面截图、验证结果和测试环境说明见 [工作区布局验收](https://github.com/ShaoClean/remote-git/wiki/Issue-6-Validation)。
Loading
Loading