审计/搜索私有Github存储库以获取特定代码

时间:2013-01-04 10:21:03

标签: github

谷歌地图v2正在退役,因此我需要审核Github上的所有私人存储库以供其使用。我可以将它们全部克隆并运行grep,但有很多(中间3位数字),所以我宁愿在服务器上做任何事情。不幸的是,Github的搜索只会搜索公共项目(据我所知),我在API中看不到任何可以做我想做的事情。

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

如果您知道自己正在寻找或多或少一致的模式,那么可以使用Github API来仅查看您可能感兴趣的文件。

例如,您可以通过API获取文件的内容:http://developer.github.com/v3/repos/contents/#get-contents

然而,这假设你知道你得到了什么文件(适用于Ruby中的Gemfile,或者Python中的requirements.txt,对于Javascript来说效果不是很好)。

另一种选择是在本地自动搜索回购。完全可以编写一个脚本来依次克隆每个repo,grep它,并输出结果(假设你有足够的时间运行它和磁盘空间)。

答案 1 :(得分:1)

请注意已经来自私有GitHub存储库的grep代码的功能:

screenshot

但是,它没有API,因此您需要使用以下格式进行一些旧的链接:

https://github.com/creaktive/WUB/search?q=BEGIN&choice=code&l=&start=

要进行多个回购,您可以将{iMacros用于Chrome / FirefoxWWW::Mechanize(如果您使用的是Perl-fu)或PhantomJS(如果您)是一个JavaScript忍者。

答案 2 :(得分:0)

我之前使用过OpenGrok,并且通常会使用像你这样的用例。