关于 github-pr
github-pr 是使用 GitHub CLI 准备和创建 GitHub Pull Request 的技能,涵盖规范化标题、结构化描述、原子提交及评审相关选项。
主要功能
- 01规范化 PR 标题格式
- 02结构化 PR 描述模板
- 03原子提交指南
- 04gh pr create 命令示例
- 05评审者、标签和草稿选项
- 06避免标题含糊或 PR 过大的建议
适用场景
- 01撰写清晰的 PR 标题和描述
- 02使用 gh 创建草稿 PR
- 03将更改整理为原子提交
- 04为 PR 添加评审者或标签
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ gentleman-programming/ gentleman-skills --skill github-pr安装后在 Claude Code 中输入/github-pr确认已加载。
详细介绍
适用场景
- 创建新的拉取请求
- 撰写 PR 标题和描述
- 准备待审核的提交
- 使用
gh pr create命令
关键模式
PR 标题 = Conventional Commit
<type>(<scope>): <short description>
feat New feature
fix Bug fix
docs Documentation
refactor Code refactoring
test Adding tests
chore Maintenance
PR 描述结构
## Summary
- 1-3 bullet points explaining WHAT and WHY
## Changes
- List main changes
## Testing
- [ ] Tests added/updated
- [ ] Manual testing done
Closes #123
原子提交
# Good: One thing per commit
git commit -m "feat(user): add User model"
git commit -m "feat(user): add UserService"
git commit -m "test(user): add UserService tests"
# Bad: Everything in one commit
git commit -m "add user feature"
代码示例
创建基本 PR
gh pr create \
--title "feat(auth): add OAuth2 login" \
--body "## Summary
- Add Google OAuth2 authentication
## Changes
- Added AuthProvider component
- Created useAuth hook
Closes #42"
使用 HEREDOC 创建 PR(复杂描述)
gh pr create --title "feat(dashboard): add analytics" --body "$(cat <<'EOF'
## Summary
- Add real-time analytics dashboard
## Changes
- Created AnalyticsProvider
- Added LineChart, BarChart components
## Testing
- [x] Unit tests for components
- [x] Manual testing complete
## Screenshots

Closes #123
EOF
)"
草稿 PR
gh pr create --draft \
--title "wip: refactor auth" \
--body "Work in progress"
添加审核者和标签的 PR
gh pr create \
--title "feat(api): add rate limiting" \
--body "Adds rate limiting to API" \
--reviewer "user1,user2" \
--label "enhancement,api"
命令
# Create PR
gh pr create --title "type(scope): desc" --body "..."
# Create with web editor
gh pr create --web
# View PR status
gh pr status
# View diff
gh pr diff
# Check CI status
gh pr checks
# Merge with squash
gh pr merge --squash
# Add reviewer
gh pr edit --add-reviewer username
反模式
不要:使用含糊的标题
# Bad
gh pr create --title "fix bug"
gh pr create --title "update"
# Good
gh pr create --title "fix(auth): prevent session timeout"
不要:创建巨型 PR
# Bad: 50 files, 2000+ lines in one PR
# Good: Split into logical PRs
# PR 1: feat(models): add User model
# PR 2: feat(api): add user endpoints
# PR 3: feat(ui): add user pages
不要:留空描述
# Bad
--body "Added feature"
# Good
--body "## Summary
- What you did and why
## Changes
- Specific changes
Closes #123"
快速参考
| 任务 | 命令 |
|---|---|
| 创建 PR | gh pr create -t "type: desc" -b "body" |
| 草稿 PR | gh pr create --draft |
| 网页编辑器 | gh pr create --web |
| 添加审核者 | --reviewer user1,user2 |
| 添加标签 | --label bug,high-priority |
| 关联议题 | 在正文中写入 Closes #123 |
| 查看状态 | gh pr status |
| 压缩合并 | gh pr merge --squash |
资源
评论
支持 Markdown