Github:搜索当前存储库中的代码

6

我知道可以通过在搜索框中输入来搜索存储库中的代码:

my-keyword repo:user_name/repository_name

但是由于我每天使用很多项目,并且喜欢深入源代码中查看这个或那个的工作方式,所以每次想要搜索东西时都必须输入repo: user_name/repository_name部分,这很快变得令人烦恼。
有没有一种方法可以快速地在当前查看的存储库源代码中搜索代码?
如果我目前正在frankenstein/monster存储库上,我希望能够搜索create_life方法,而不必在搜索框中输入repo: frankenstein/monster,因为我已经在这个存储库中了。
(就好像你正在文本编辑器中工作一个文件,按下Ctrl+F并需要输入当前文件的文件名一样)
4个回答

6

2013年5月更新:请参阅“搜索所有存储库的存储库搜索

今天,我们允许您搜索自己的公共存储库以及您可以访问的任何私有存储库。

当您在存储库页面上时,您将看到默认情况下正在搜索该存储库的指示

enter image description here


原始答案(2013年2月)

我没有找到任何“repo:current”或其他约定来指定“代码”搜索的默认 repo。

通常情况下,我会在单独的窗口中进行搜索,选择“代码”,并已经填好了“repo:username/reponame”。
我只添加我需要的关键字,然后点击回车。

我会多次重复这个过程,只更改关键字,但如果结果很有趣,我会在另一个选项卡中打开它,以保留搜索页和其字段。


4
在私有代码库中,似乎会出现一个名为“搜索源代码…”的第二个搜索栏。在这种情况下,只需按两次Tab键即可进入并搜索内部内容。
在我尝试的公共代码库中似乎没有出现这种情况。

如果这个存在于私人存储库中,我想它是故意从公共存储库中移除的。也许是为了避免过多的搜索。太糟糕了 :( 我会在私人存储库中进行调查以确定情况。我认为这种区分正确地回答了我的问题。谢谢。 - Byscripts
+1. 我没有访问私有仓库的权限,正如我的回答所反映的那样。 - VonC

2

我刚刚编写了一个非常简单的脚本,可以自动将当前repo添加到搜索框中(适用于TemperMonkey,应该也适用于GreaseMonkey):

// ==UserScript==
// @name       Github Current Repo Search
// @namespace  http://www.byscripts.info/
// @version    0.1
// @description  Add automatically the current repo in the search box
// @match      https://github.com/*
// @exclude    https://github.com/search*
// @copyright  2012+, ByScripts
// ==/UserScript==

var repo = window.location.pathname.substring(1).split('/').slice(0, 2).join('/');
if(repo.length) {
  document.getElementById('command-bar').value = "repo:" + repo;
}

0

GitHub 提供了一个全新的 搜索功能

如果您需要更高级的搜索需求,例如搜索特定的存储库或用户等,请使用 高级搜索

enter image description here

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接