diff --git a/docs/workflow.md b/docs/workflow.md index 2b95c68..a11ab0b 100644 --- a/docs/workflow.md +++ b/docs/workflow.md @@ -108,6 +108,17 @@ - 描述列出关键改动点,特别是跨模块影响 - Co-Authored-By 行带版本号 +## Git 推送流程 + +- **push 必须由用户明确要求**:默认只 commit,不自动 push。 +- **GitHub 是主推送目标**:需要推送时,必须优先确保 GitHub 上的目标分支更新成功,再同步到 Gitea。 +- `origin` 配有两个 push URL,顺序应保持为 GitHub 在前、Gitea 在后。推送前可用 `git remote get-url --push --all origin` 核对。 +- 标准推送命令优先使用显式 refspec:`git push origin :`。这样会按 `origin` 的 push URL 顺序先推 GitHub,再推 Gitea,并避免当前分支与目标分支不一致时误推。 +- 如果 GitHub fetch/push 失败,不要静默改为只推 Gitea,也不要把“已推送”视为完成。必须明确告知用户 GitHub 未成功,并等待用户决定是否临时只推 Gitea。 +- 推送完成后必须分别核对两边目标分支指向同一个提交: + - `git ls-remote --heads origin ` + - `git ls-remote --heads gitea ` + ## 文档维护流程 - **新增/改动核心架构** → 更新 `architecture.md`