有一种方法来grep的东西在一个Github项目的代码?

我可以拉源和grep它在本地,但我想知道它是否可能通过网络界面或第三方替代方案。

想法吗?


当前回答

虽然@VonC的答案适用于一些存储库,但不幸的是,对于许多存储库,您现在还不能。Github只是没有索引他们(最初由@emddudley评论)。他们的网站上没有说明这一点,但如果你寻求支持,他们会告诉你:

发件人:蒂姆·皮斯 我们已经停止在codesearch索引中添加新推送的代码。代码的数量已经超过了我们当前的搜索索引,我们正在努力转向一个更可扩展的搜索架构。很抱歉给你添麻烦了。我们还不知道这个新的搜索索引何时会启动并运行,但当它准备就绪时,我们会发布一篇博客文章(https://github.com/blog)。

令人恼火的是,除了缺少结果(也可能是由于错误的查询)之外,没有办法告诉哪些存储库没有被索引。

也没有办法跟踪这个问题,除了等待他们的博客(或在这里看SO)。

发件人:蒂姆·皮斯 恐怕我们的问题跟踪器是内部的,但一旦新的搜索索引启动并运行,我们就会通知您。

其他回答

虽然@VonC的答案适用于一些存储库,但不幸的是,对于许多存储库,您现在还不能。Github只是没有索引他们(最初由@emddudley评论)。他们的网站上没有说明这一点,但如果你寻求支持,他们会告诉你:

发件人:蒂姆·皮斯 我们已经停止在codesearch索引中添加新推送的代码。代码的数量已经超过了我们当前的搜索索引,我们正在努力转向一个更可扩展的搜索架构。很抱歉给你添麻烦了。我们还不知道这个新的搜索索引何时会启动并运行,但当它准备就绪时,我们会发布一篇博客文章(https://github.com/blog)。

令人恼火的是,除了缺少结果(也可能是由于错误的查询)之外,没有办法告诉哪些存储库没有被索引。

也没有办法跟踪这个问题,除了等待他们的博客(或在这里看SO)。

发件人:蒂姆·皮斯 恐怕我们的问题跟踪器是内部的,但一旦新的搜索索引启动并运行,我们就会通知您。

谷歌允许您在项目中搜索,但不包括代码:(

网站:https://github.com/CreateJS/EaselJS测试

更新

由于XHR问题和API更改,下面的bookmarklet黑客被破坏。

值得庆幸的是,Github现在有“一个全新的代码搜索”,它可以出色地完成这项工作。


Checkout this voodoo: Github code search userscript. Follow the directions there, or if you hate bloating your browser with scripts and extensions, use my bookmarkified bundle of the userscript: javascript:(function(){var s='https://raw.githubusercontent.com/skratchdot/github-enhancement-suite/master/build/github-enhancement-suite.user.js',t='text/javascript',d=document,n=navigator,e;(e=d.createElement('script')).src=s;e.type=t;d.getElementsByTagName('head')[0].appendChild(e)})();doIt('');void(''); Save the source above as the URL of a new bookmark. Browse to any Github repo, click the bookmark, and bam: in-page, ajaxified code search. CAVEAT Github must index a repo before you can search it. Abracadabra... Here's a sample search from the annotated ECMAScript 5.1 specification repository:

访问这里:https://github.com/search并输入“pattern repo:user_name/repo_name”。

例如,在fastai用户的fastai repo中搜索cnn_learner,输入如下:

cnn_learner回购:fastai / fastai

就是这样。唯一的烦恼是你需要额外的点击。它会告诉你:

我们找不到任何与“cnn_learner”匹配的存储库 回购:fastai / fastai '

因为默认情况下,它会搜索与搜索字符串匹配的存储库…

所以只要点击左边的“代码”,它就会显示你想要的东西。

或者直接使用如下URL获取代码搜索结果:

https://github.com/search?q=cnn_learner+repo%3Afastai%2Ffastai&type=code

有一个非常好的项目叫做github1s @ https://github.com/conwnet/github1s。

基本上,您可以将任何repo的url更改为https://github.com/microsoft/vscode到https://github1s.com/microsoft/vscode,然后您可以使用编辑器中的内置搜索功能,在存储库中搜索任何内容。