本规范用于降低 git pull 后冲突率,避免本地改动被覆盖,统一 TTMusic 项目的团队协作流程。
适用范围:所有参与本仓库开发与评审的成员。
main/master)仅用于集成,禁止直接提交。feature/* 分支。fix/* 分支。分支命名示例:
feature/webdav-upload-refactorfix/local-music-crash-on-resume每次 pull / rebase / 切分支前,必须执行:
git status
判定规则:
commit 或 stash,禁止直接同步。git status
git fetch origin
git rebase origin/<base-branch>
适用边界:
推送前检查:
git status
定位含冲突文件后,逐个处理冲突标记(<<<<<<<、=======、>>>>>>>)。
解决后执行:
git add <file>
git rebase --continue # 或 git commit(merge 场景)
完成后至少执行一次关键路径验证(构建/核心流程冒烟)。
冲突解决提交信息建议包含 conflict-resolve 关键字,并在 PR 说明中记录冲突来源与处理原则。
git stash push -m "<date>-<branch>-<purpose>"
示例:2026-02-06-feature-webdav-sync-before-rebase
git switch -c backup/<date>-<topic>
用于保护未完成改动,避免误操作覆盖。
git stash list
git stash apply stash@{n}
若冲突,回到“冲突处理 SOP”处理。
以下命令属于高风险操作,默认禁止直接执行:
git reset --hardgit checkout -- <path>(覆盖工作区)git clean -fd允许前置条件:
.gitattributes 管理行尾与文本识别,避免跨平台伪冲突。-text,禁止按文本方式合并。已知限制:
后续优化: