SuperAPI AI 工具集

glab-repo

编程与开发

查看项目

更新于 10-16 00:21

技能介绍

用途:通过 glab 命令行管理 GitLab 仓库与项目,覆盖克隆、创建、复刻、查看、更新、归档、删除、搜索、转移及成员管理等操作。

主要能力:

  • 仓库生命周期:glab repo clone、glab repo create、glab repo fork、glab repo view、glab repo update、glab repo delete、glab repo transfer、glab repo archive download。
  • 远程管理:glab repo remote add <namespace/project> 解析项目引用并添加 Git 远程,可用 --name/-n 指定名称,--protocol ssh|https/-p 覆盖协议。
  • 本地分支清理:glab repo prune 删除 GitLab 合并请求已合并的本地分支,支持 --dry-run、--yes、--exclude、--merged;不会删除远端分支,且跳过受保护分支、默认分支和当前分支。
  • 成员管理:glab repo members list/add/remove/update,用 --access-level 指定权限。
  • 批量与搜索:glab repo clone -g 组名、glab repo search、glab repo list(--member/--mine)。
  • 结构化输出:glab repo contributors --output json 或 -F json,便于自动化。

必要用法示例:

  • 克隆:glab repo clone group/project
  • 克隆 wiki:glab repo clone --wiki group/project
  • 创建:glab repo create my-new-project --public
  • 复刻:glab repo fork upstream/project
  • 添加远程:glab repo remote add group/project --name upstream
  • 清理分支:glab repo prune --dry-run 然后 glab repo prune --yes

限制与注意事项:

  • 仓库 URL 会先校验再交给 Git;接受的 scheme 与 scp 风格 SSH 语法被允许,选项式字符串、remote-helper 传输、空白与控制字符会被拒绝;若克隆/复刻/远程操作因无效远程 URL 失败,应检查项目/主机元数据,而非绕过校验。
  • --wiki 不能与按组克隆的 --group 同用;项目 wiki 关闭时会明确失败。
  • 自管主机带端口时,配置键基于含端口的完整主机名;若解析到错误 API 主机,需检查 glab config path 中的主机键是否含端口。
  • --merged 更快但会漏掉非快进祖先的 squash/rebase 合并,建议默认使用 GitLab 查询模式。
  • 组克隆可能因仓库过多超时,可改为克隆特定仓库。
  • 部分项目禁用复刻或启用转移保护。

完整命令文档见 references/commands.md;相关技能包括 glab-auth、glab-ssh-key、glab-deploy-key、glab-config、glab-variable。