文件
skills/gitea-repo-sync/references/gitea-api-notes.md
2026-03-06 18:27:32 -08:00

50 行
1.2 KiB
Markdown

此文件含有模棱两可的 Unicode 字符
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
# Gitea API Notes
本技能默认对接 Gitea v1.25.x,核心只依赖少量稳定接口
- `GET /api/v1/user`
- `GET /api/v1/repos/{owner}/{repo}`
- `POST /api/v1/user/repos`
- `POST /api/v1/orgs/{org}/repos`
## 创建仓库的 owner 选择
1. 先调用 `GET /api/v1/user` 获取当前 token 对应登录名。
2. 如果目标 `owner` 与当前登录名一致,走 `POST /api/v1/user/repos`
3. 如果目标 `owner` 不同,按组织仓库处理,走 `POST /api/v1/orgs/{org}/repos`
## 推荐请求头
```text
Authorization: token <token>
Content-Type: application/json
Accept: application/json
```
## Git Push 认证建议
不要把 token 写入 `git remote -v`
优先使用一次性的 HTTP header
- 用户名Gitea 登录名
- 密码token
- Header`Authorization: Basic <base64(username:token)>`
这样可以在 push 时认证,但不会把 token 持久化到仓库配置里。
## 建议的环境变量
```bash
export GITEA_URL='https://git.hk.hao.work'
export GITEA_TOKEN='<your_token>'
```
## 失败时优先检查
- token 是否有 repo 创建/写入权限
- `owner` 是用户还是组织
- 本地目录是否已经是 Git 仓库
- 当前分支是否存在提交
- 远程 URL 是否已指向别的仓库