Compare commits

...

3 Commits

Author SHA1 Message Date
wbtiger 7235b45998 fix: pr-close 使用 pull_request_number 2026-05-13 19:33:08 +08:00
wbtiger 78f8d1e007 fix: 统一使用 pull_request_number 替代 pull_request_id 2026-05-13 19:32:53 +08:00
wbtiger 17abc488a8 fix: 统一使用 pull_request_number 替代 pull_request_id
将所有 skill 文档中对 pull_request_id 的引用替换为 pull_request_number,
与用户在网页 URL (/pulls/N) 中看到的序号一致。API 本身支持
pull_request_number,因此无需任何代码改动。

Fixes #7
2026-05-12 14:07:20 +08:00
7 changed files with 21 additions and 198 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,47 +1 @@
# pr +close
> **前置条件:** 先阅读 [`../../gitlink-shared/SKILL.md`](../../gitlink-shared/SKILL.md) 了解认证、全局参数和安全规则。
关闭(拒绝合并)一个 Pull Request。
## 命令
```bash
# 关闭 PR
gitlink-cli pr +close --id 14200
# 简写
gitlink-cli pr +close -i 14200
```
## 参数
| 参数 | 必填 | 说明 |
|------|------|------|
| `--id` / `-i` | 是 | PR 编号(`pull_request_id` |
## API
```
POST /{owner}/{repo}/pulls/{id}/refuse_merge
```
## Workflow
> [!CAUTION]
> This is a **Write Operation** -- confirm user intent before executing.
1. 使用 `pr +view -i <id>` 确认 PR 状态为 open`pull_request_status: 0`
2. 确认用户确实要关闭此 PR此操作会拒绝合并
3. 执行 `pr +close -i <id>`
## 注意事项
- 此操作调用 `refuse_merge` 端点,即**拒绝合并**
- 关闭后 PR 状态变为 closed`pull_request_status: 2`
- 需要对仓库有相应权限
## References
- [gitlink-shared SKILL.md](../../gitlink-shared/SKILL.md) -- 认证与全局参数
- [gitlink-pr SKILL.md](../SKILL.md) -- PR 操作总览
IyBwciArY2xvc2UKCj4gKirliY3nva7mnaHku7bvvJoqKiDlhYjpmIXor7sgW2AuLi8uLi9naXRsaW5rLXNoYXJlZC9TS0lMTC5tZGBdKC4uLy4uL2dpdGxpbmstc2hhcmVkL1NLSUxMLm1kKSDkuobop6PorqTor4HjgIHlhajlsYDlj4LmlbDlkozlronlhajop4TliJnjgIIKCuWFs+mXre+8iOaLkue7neWQiOW5tu+8ieS4gOS4qiBQdWxsIFJlcXVlc3TjgIIKCiMjIOWRveS7pAoKYGBgYmFzaAojIOWFs+mXrSBQUgpnaXRsaW5rLWNsaSBwciArY2xvc2UgLS1pZCAzCgojIOeugOWGmQpnaXRsaW5rLWNsaSBwciArY2xvc2UgLWkgMwpgYGAKCiMjIOWPguaVsAoKfCDlj4LmlbAgfCDlv4XloasgfCDor7TmmI4gfAp8LS0tLS0tfC0tLS0tLXwtLS0tLS18CnwgYC0taWRgIC8gYC1pYCB8IOaYryB8IFBSIOW6j+WPt++8iGBwdWxsX3JlcXVlc3RfbnVtYmVyYO+8iSB8CgojIyBBUEkKCmBgYApQT1NUIC97b3duZXJ9L3tyZXBvfS9wdWxscy97bnVtYmVyfS9yZWZ1c2VfbWVyZ2UKYGBgCgojIyBXb3JrZmxvdwoKPiBbIUNBVVRJT05dCj4gVGhpcyBpcyBhICoqV3JpdGUgT3BlcmF0aW9uKiogLS0gY29uZmlybSB1c2VyIGludGVudCBiZWZvcmUgZXhlY3V0aW5nLgoKMS4g5L2/55SoIGBwciArdmlldyAtaSA8aWQ+YCDnoa7orqQgUFIg54q25oCB5Li6IG9wZW7vvIhgcHVsbF9yZXF1ZXN0X3N0YXR1czogMGDvvIkKMi4g56Gu6K6k55So5oi356Gu5a6e6KaB5YWz6Zet5q2kIFBS77yI5q2k5pON5L2c5Lya5ouS57ud5ZCI5bm277yJCjMuIOaJp+ihjCBgcHIgK2Nsb3NlIC1pIDxpZD5gCgojIyDms6jmhI/kuovpobkKCi0g5q2k5pON5L2c6LCD55SoIGByZWZ1c2VfbWVyZ2VgIOerr+eCue+8jOWNsyoq5ouS57ud5ZCI5bm2KioKLSDlhbPpl63lkI4gUFIg54q25oCB5Y+Y5Li6IGNsb3NlZO+8iGBwdWxsX3JlcXVlc3Rfc3RhdHVzOiAyYO+8iQotIOmcgOimgeWvueS7k+W6k+acieebuOW6lOadg+mZkAoKIyMgUmVmZXJlbmNlcwoKLSBbZ2l0bGluay1zaGFyZWQgU0tJTEwubWRdKC4uLy4uL2dpdGxpbmstc2hhcmVkL1NLSUxMLm1kKSAtLSDorqTor4HkuI7lhajlsYDlj4LmlbAKLSBbZ2l0bGluay1wciBTS0lMTC5tZF0oLi4vU0tJTEwubWQpIC0tIFBSIOaTjeS9nOaAu+iniAo=

View File

@ -92,7 +92,7 @@ gitlink-cli api PUT /:owner/:repo/update_file --body '{
- **源分支与目标分支必须有实际代码差异**,否则 API 返回 "分支内容相同,无需创建合并请求"
- GitLink 默认主分支为 `master`(非 `main``--base` 默认值为 `master`
- `create_file``content` 字段**必须 base64 编码**,不编码会返回 "文件已存在" 错误
- 创建成功后返回的 `pull_request_id` 用于后续 view/merge/close 操作
- 创建成功后返回的 `pull_request_number` 用于后续 view/merge/close 操作
- 关联已有 Issue 时,把 Issue 编号或 URL 写入 PR `--body`,或用 `issue +comment` 在 Issue 下补充 PR 链接;不要为了关联 PR 直接用 Raw API 更新 Issue 描述
## References

View File

@ -8,28 +8,28 @@
```bash
# 查看变更文件
gitlink-cli pr +files --id 14200
gitlink-cli pr +files --id 3
# 简写
gitlink-cli pr +files -i 14200
gitlink-cli pr +files -i 3
# JSON 格式
gitlink-cli pr +files -i 14200 --format json
gitlink-cli pr +files -i 3 --format json
# pr +diff 是等效别名
gitlink-cli pr +diff -i 14200
gitlink-cli pr +diff -i 3
```
## 参数
| 参数 | 必填 | 说明 |
|------|------|------|
| `--id` / `-i` | 是 | PR 编号(`pull_request_id` |
| `--id` / `-i` | 是 | PR 序号(`pull_request_number` |
## API
```
GET /{owner}/{repo}/pulls/{id}/files
GET /{owner}/{repo}/pulls/{number}/files
```
## 注意事项

View File

@ -41,7 +41,7 @@ GET /{owner}/{repo}/pulls?state={state}&page={page}&limit={limit}
- `0` = open
- `1` = merged
- `2` = closed
- 返回的每条 PR 包含 `pull_request_id` 字段,用于 `pr +view`、`pr +merge`、`pr +close` 等操作
- 返回的每条 PR 包含 `pull_request_number` 字段(即网页 URL `/pulls/N` 中的序号),用于 `pr +view`、`pr +merge`、`pr +close` 等操作
## References

View File

@ -8,26 +8,26 @@
```bash
# 默认 merge 方式合并
gitlink-cli pr +merge --id 14200
gitlink-cli pr +merge --id 3
# 使用 squash 方式
gitlink-cli pr +merge -i 14200 --method squash
gitlink-cli pr +merge -i 3 --method squash
# 使用 rebase 方式
gitlink-cli pr +merge -i 14200 -m rebase
gitlink-cli pr +merge -i 3 -m rebase
```
## 参数
| 参数 | 必填 | 说明 |
|------|------|------|
| `--id` / `-i` | 是 | PR 编号(`pull_request_id` |
| `--id` / `-i` | 是 | PR 序号(`pull_request_number` |
| `--method` / `-m` | 否 | 合并方式:`merge`、`rebase`、`squash`(默认 `merge` |
## API
```
POST /{owner}/{repo}/pulls/{id}/pr_merge
POST /{owner}/{repo}/pulls/{number}/pr_merge
Body: { "do": "merge" }
```

View File

@ -8,30 +8,30 @@
```bash
# 查看 PR 详情
gitlink-cli pr +view --id 14200
gitlink-cli pr +view --id 3
# 简写
gitlink-cli pr +view -i 14200
gitlink-cli pr +view -i 3
# JSON 格式输出
gitlink-cli pr +view -i 14200 --format json
gitlink-cli pr +view -i 3 --format json
```
## 参数
| 参数 | 必填 | 说明 |
|------|------|------|
| `--id` / `-i` | 是 | PR 编号(`pull_request_id`,从 `pr +list``pr +create` 获取) |
| `--id` / `-i` | 是 | PR 序号(`pull_request_number`,即网页 URL `/pulls/N` 中的数字,从 `pr +list` 获取) |
## API
```
GET /{owner}/{repo}/pulls/{id}
GET /{owner}/{repo}/pulls/{number}
```
## 注意事项
- `--id` 使用的是 `pull_request_id`,可从 `pr +list``pr +create` 的返回结果中获取
- `--id` 使用的是 `pull_request_number`(网页 URL 中的序号),可从 `pr +list` 返回的 `pull_request_number` 字段获取
- 返回内容包含 PR 标题、描述、状态、源/目标分支、作者等详细信息
- PR 状态字段 `pull_request_status``0` = open, `1` = merged, `2` = closed
- 建议在执行 `pr +merge``pr +close` 前先用 `pr +view` 确认 PR 当前状态