Files
MemRelay/global/功能完成即提交并按远端状态推送.md

23 lines
1.6 KiB
Markdown

---
title: 功能完成即提交并按远端状态推送
type: rule
permalink: main/global/功能完成即提交并按远端状态推送
stable_id: 2406be77-e6ce-4572-890e-18747c968f55
scope: global
project_id: null
memory_type: rule
status: active
revision: 1
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
created_at: '2026-09-23T14:50:32.997834+00:00'
updated_at: '2026-09-23T14:50:32.997886+00:00'
tags:
- rules
- git
- commit
- push
- rebase
- linear-history
---
此规则取代旧的“默认仅 commit、明确要求才 push”规则。每个可独立交付的功能完成并验证后立即提交;仓库存在远端时提交后推送对应远端分支,没有远端时仅本地提交且不擅自创建远端。推送前先 fetch,远端有新提交时将本地提交 rebase 到远端最新状态后再推送;推送被拒绝时先排查原因,未经用户明确确认不得使用 --force 或 --force-with-lease。功能分支达到可集成状态且目标分支明确时主动合并:优先把功能分支 rebase 到最新目标分支,再以 fast-forward 合并,保持单一、线性的提交历史,避免无意义 merge commit。若仓库存在分支保护、PR 评审或 CI 门禁流程,不直接合并进目标分支,改为推送功能分支并创建 PR。rebase/合并后重新验证;冲突必须理解双方改动后解决。已发布或共享分支若 rebase 需要强制推送,未经确认不得改写远端历史。合并完成且存在远端时推送目标分支,不擅自发布或部署。提交信息格式为 type: 中文一句话描述,type 使用 feat/fix/refactor/style/docs/chore/revert。