如何从GitHub Enterprise服务器存储路径识别对应仓库?
识别GitHub Enterprise服务器中仓库存储路径对应的具体仓库
以下是几种可行的方法,均需要服务器管理员权限:
方法1:查看仓库本地配置文件
- 登录到GitHub Enterprise服务器终端,进入目标仓库路径:
cd /data/repositories/9/nw/90/87/27/100013262/20166.git - 读取仓库的配置文件,里面包含仓库的远程地址信息:
配置文件中cat config[remote "origin"]下的url字段会显示类似git://your-ghe-domain/username/repo-name.git的内容,从中即可提取出仓库所属用户和具体名称。
方法2:使用GitHub Enterprise管理命令
- 在服务器终端运行仓库列表命令,结合筛选定位目标仓库:
命令输出会包含仓库的完整标识(格式通常为ghe-repo list | grep 20166username/repo-name)以及相关元数据。
方法3:查询PostgreSQL数据库
GitHub Enterprise的仓库元数据存储在PostgreSQL数据库中,可通过查询直接获取信息:
- 登录到数据库:
sudo -u postgres psql github_enterprise - 执行查询语句(假设路径末尾的
20166是仓库ID):
若不确定仓库ID,也可通过存储路径模糊查询:SELECT repo.id, repo.name, owner.login FROM repos repo JOIN users owner ON repo.owner_id = owner.id WHERE repo.id = 20166;
查询结果会返回仓库ID、名称以及所属用户的登录名。SELECT repo.id, repo.name, owner.login FROM repos repo JOIN users owner ON repo.owner_id = owner.id WHERE repo.repo_path LIKE '%20166.git%';
内容的提问来源于stack exchange,提问作者iclman
相关产品推荐
相关产品推荐

