Kam*_*her 5 php version-control github repository composer-php
有没有办法发现所有具有特定存储库Foo/Bar作为依赖项的公共 GitHub 存储库?
我对 PHP 上下文感兴趣(所以主要与Composer相关)。
我想知道是否有一些 Composer 特定的(可能依赖Packagist?)或一些通用的解决方案。
鉴于您的具体要求,我过去完成此操作的一种方法是使用Google 的 GitHub Data for BigQuery。
例如,此查询将返回其中composer.lock提交了文件的所有存储库。Foo/Bar
SELECT f.repo_name
FROM [bigquery-public-data:github_repos.files] f
JOIN [bigquery-public-data:github_repos.contents] c
ON f.id = c.id
WHERE f.path = 'composer.lock'
AND c.content LIKE '%"name": "Foo/Bar"%'
Run Code Online (Sandbox Code Playgroud)
现在这有一些问题,例如:
有些包不提交,composer.lock所以您也可以检查直接依赖关系composer.json,但这不会给您 100% 的结果。
根据包名称的唯一性,Foo/Bar该字符串有可能出现在锁定文件的其他位置。您可能想要调整查询。
这些查询需要很长时间才能运行。
Google 没有为其免费计划提供大量带宽配额,因此您可能会发现自己每月只能运行一些免费查询。确保在完整大小的数据集上运行之前在较小的示例数据集上练习查询。
如果应用程序Fred依赖于库baz并且baz依赖于Foo/Bar,您将其算作 2 个依赖项还是仅 1 个具有传递依赖项?Fred如果和都已baz提交文件,则此查询将把它们计为 2 composer.lock。
尽管如此,这是对库的使用范围有某种了解的起点。
| 归档时间: |
|
| 查看次数: |
109 次 |
| 最近记录: |