{"id":"git-workflow","name":"git-workflow","summary":"Gitの状態チェック、コミット、コミット、ブランチ、プッシュ、PR、リベースを安全に処理します。ユーザーが変更の確認、コミットの生成または作成、ブランチ管理、更新のプッシュ、PRの開始、または履歴の整理を依頼する際に使用されます。","body":"# Git 工作流助手\n\n## 核心原则\n\n- 只执行用户明确要求的 Git 动作。生成提交信息不等于暂存或提交；提交不等于推送；创建 PR 不等于合并 PR、关闭 Issue 或发布 Release。\n- 把工作树中已有、未跟踪和无关的修改视为用户资产，不覆盖、不回退、不混入本轮提交。\n- 优先使用非交互命令。涉及历史重写、冲突选择或远程覆盖时降低自动化程度。\n\n## 工作流程\n\n### 1. 读取仓库规则与状态\n\n先阅读适用的 `AGENTS.md`、`CONTRIBUTING.md`、README、提交规范和 CI 说明，再检查：\n\n```bash\ngit status --short --branch\ngit diff\ngit diff --cached\ngit log --oneline -10\ngit remote -v\ngit branch -vv\n```\n\n同时识别未跟踪文件、当前分支、upstream、远程差异和已有失败。不得只看 staged diff。\n\n### 2. 明确动作与文件范围\n\n把用户请求拆成独立授权：\n\n| 动作 | 默认权限 |\n|------|----------|\n| 分析状态、生成 commit message 或 PR 文案 | 只读 |\n| 暂存、commit | 仅用户要求后执行，只选本轮相关文件 |\n| 创建或切换分支 | 仅用户明确要求时执行；实现流程需要但未获授权时，先说明原因并取得同意 |\n| fetch、push、创建 PR | 分别确认在请求范围内，不互相推导 |\n| merge、关闭 Issue、发布 Release | 必须有明确授权 |\n| rebase、修改已发布历史、强制更新远程 | 高风险，必须明确授权并满足额外条件 |\n\n存在无关改动时不得使用 `git add .` 或 `git add -A`。逐个暂存目标文件，并用 `git diff --cached` 复核。\n\n### 3. 规划原子提交\n\n- 根据真实 diff 判断 `feat`、`fix`、`docs`、`refactor`、`test`、`perf` 或 `chore`。\n- 沿用仓库近期提交的语言、scope 和格式。\n- 一个提交只表达一项可独立理解和验证的改动。\n- `Closes #123` 仅在对应 Issue 确实应由该提交自动关闭时使用。\n\n提交信息遵循：\n\n```text\n<type>(<scope>): <简短描述>\n\n<必要时说明原因、关键实现和兼容性>\n\n<关联 Issue 或 Breaking Change>\n```\n\n### 4. 验证后执行\n\n提交前先检查验证脚本是否会下载依赖、访问外部服务或产生其他状态，再运行与改动相关的测试、lint、构建或文档检查，并记录实际命令和退出状态。可能产生外部副作用时先取得授权。基线已有失败时单独说明，不能把未运行的项目标为通过。\n\n执行 commit 后检查：\n\n```bash\ngit status --short --branch\ngit show --stat --oneline HEAD\n```\n\n推送前先 `git fetch`，确认 upstream 没有未整合的新提交；禁止 force push。\n\n### 5. 创建 PR\n\nPR 文案应帮助 reviewer 结合 diff 和验证结果快速审查，至少包含：\n\n```markdown\n## 变更摘要\n\n## 关键改动\n\n## 验证结果\n\n## 风险与回滚\n\n## 关联 Issue\n```\n\n只勾选真实完成的检查。截图、迁移说明和回滚步骤仅在适用时加入。\n\n## Rebase 与历史整理边界\n\n- rebase 前要求工作树和暂存区都干净；未经授权不得自动 stash。\n- 先 fetch 并确认目标基线，必要时在用户允许下创建本地备份引用。\n- 不对公共分支或其他人依赖的已发布提交执行 rebase。\n- 禁止 `git push --force`。确需更新用户明确授权重写的私有分支时，只能在重新确认远程状态后使用 `--force-with-lease`。\n- 遇到冲突时停止并报告冲突文件与可选方案，不猜测内容归属或擅自解决。\n\n## 输出\n\n用中文简要报告：\n\n- 执行了哪些 Git 动作、影响哪些文件和分支。\n- 实际运行的验证及结果。\n- commit SHA、push 状态和 PR URL（若已执行）。\n- 未执行、失败或仍需用户决定的事项。","author":"@laolaoshiren","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/laolaoshiren/claude-code-skills-zh/tree/main/skills/git-workflow","license":"MIT","category":"document","lang":"multi","tokens":1007,"stars":0,"calls30d":2,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[],"scannedAt":"2026-08-22","hasScripts":false,"networkEndpoints":[]}}