用途:从 git 远程地址中提取 GitHub 仓库的 owner/repo 标识,供 GitHub CLI(gh)或 API 调用使用,尤其适合需要在多个仓库间切换、或脚本运行前先确定当前仓库的场景。
主要能力:解析 HTTPS(如 https://github.com/owner/repo.git)与 SSH(如 git@github.com:owner/repo.git)两种 URL;支持 GitHub Enterprise 自定义域名;可去除 .git 后缀与多余路径;输出 owner/repo、仅 owner 或仅仓库名。
常用命令:git remote -v 列出所有远程;git remote get-url origin 获取 origin 地址;提取完整标识可用 git remote get-url origin | sed 's/.[:/]([^/]/[^/]).git/\1/';仅 owner 用 git remote get-url origin | sed 's/.[:/]([^/])/[^/].git/\1/';仅名称用 basename $(git remote get-url origin) .git。得到标识后可传给 gh,如 gh repo view "$REPO"、gh issue list --repo "$REPO"。
适用场景:为 gh 命令或 API 提供 -R 参数以避免 remote 缺失报错;脚本内检测当前所在仓库;区分 fork 与 upstream 时改用 git-fork-workflow。
限制与边界:需在 git 仓库内运行;无远程或非 GitHub 地址时解析会失败,可先用 git remote get-url origin &>/dev/null 或 grep -q github.com 校验;子模块需用 git -C "$(git rev-parse --show-toplevel)" remote get-url origin。资料未提供安装方式、收费与平台信息。