From 32aaf53b26af2fc334a15aa002685a04bb794fef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=80=82?= Date: Wed, 8 Jul 2026 20:13:53 +0800 Subject: [PATCH] =?UTF-8?q?docs(workflow):=20=E6=98=8E=E7=A1=AE=20GitHub?= =?UTF-8?q?=20=E4=BC=98=E5=85=88=E6=8E=A8=E9=80=81=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/workflow.md | 11 +++++++++++ 1 file changed, 11 insertions(+) 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`