Считается, что github — крупнейшая в мире платформа для хостинга проектов программного обеспечения с открытым исходным кодом — используется многими программистами не только потому, что его можно бесплатно использовать в качестве общедоступного или частного репозитория кода, но и потому, что существует большое количество открытых исходных кодов. учебные проекты или ресурсы на github.Концепция свободы с открытым исходным кодом привлекла большое количество индивидуальных или корпоративных разработчиков.
Итак, перед лицом такого большого количества хранилищ кода, как мы можем искать лучшие проекты, которые лучше отвечают нашим потребностям среди множества ресурсов?
Например, если я хочу найти проект Springboot, вы можете напрямую ввести ключевое слово Springboot для прямого поиска, но результат поиска составляет 118 085. Конечно, вы также можете выполнить простую сортировку, например, по количеству звезд. и вилки.
Если во время поиска вы обнаружите, что страница github загружается медленно или изображение не открывается, откройте файл hosts (C:\Windows\System32\drivers\etc) и добавьте следующее:
192.30.253.113 github.com
151.101.113.194 github.global.ssl.fastly.net
151.101.184.133 assets-cdn.github.com
151.101.184.133 raw.githubusercontent.com
151.101.184.133 gist.githubusercontent.com
151.101.184.133 cloud.githubusercontent.com
151.101.184.133 camo.githubusercontent.com
151.101.184.133 avatars0.githubusercontent.com
151.101.184.133 avatars1.githubusercontent.com
151.101.184.133 avatars2.githubusercontent.com
151.101.184.133 avatars3.githubusercontent.com
151.101.184.133 avatars4.githubusercontent.com
151.101.184.133 avatars5.githubusercontent.com
151.101.184.133 avatars6.githubusercontent.com
151.101.184.133 avatars7.githubusercontent.com
151.101.184.133 avatars8.githubusercontent.com
Но действительно ли результаты этого поиска точны? Далее давайте продемонстрируем некоторые из наших часто используемых методов поиска на github, чтобы сделать результаты поиска более точными и соответствовать требованиям!
Во-первых, давайте посмотрим на интеллект-карту:
Вышеупомянутые методы поиска я разделил на две категории, одна из которых широко используется, а другие часто используемые части должны быть наиболее часто используемыми в нашей повседневной жизни, о чем мы должны помнить.
1. в
Ключевое слово in используется для ограничения области поиска, его можно указать для поиска ключевых слов в названии, описании и документах readme.
- in:name: Указанная область поиска — это имя склада
- in:description: указанная область поиска находится в аннотации
- in:readme: указывает, что область поиска находится в документе readme.
Например, укажите три ключевых слова названия хранилища проекта springboot, mybatis и demo, тогда поиск будет следующим:
in:name springboot mybatis demo
Результат выглядит следующим образом:
Проект, найденный таким образом, представляет собой простой демонстрационный проект интеграции, а не комплексный проект. Вы также можете искать так:
in:description springboot mybatis 整合
2. звезды, вилки
Обычно мы можем судить о том, хорош проект или нет, по количеству звезд и форков проекта.Конечно, это не абсолютно.В github спрятано много неизвестных отличных проектов, которые ждут вас для изучения.
Способ следующий:
- stars:>: Отфильтровать склады, количество звезд которых больше определенного значения.
- stars:start..end: Отфильтровать склады, число звезд которых находится между началом и концом
- fork:>
- fork:start..end
Таким образом, через ключевые слова звезд и вилок мы можем отфильтровать часть по количеству звезд и вилок. Например, я хочу отфильтровать результаты поиска для элементов с более чем 50 звездами. Затем следующим образом:
in:name springboot mybatis demo stars:>50
После скрининга только 2 результата соответствуют требованиям:
3. Язык
Этот простой указывает язык написания проекта, такой как java, python, php и т. д. Например, мы ищем单点登录
, если искать напрямуюin:description 单点登录
, то в результаты будут включены проекты внедрения на разных языках, но если вы добавите квалификацию языка java, в результатах поиска будет только java.
in:description 单点登录 language:java
4, создано, отправлено
Дата создания, дата обновления. Проект давно не поддерживается, либо проект давно создавался, то технология проекта иногда устарела.Например предыдущая версия 1.5 Springboot создала проект не очень подходит на данный момент , а теперь учимся напрямую.Так лучше, поэтому чтобы найти новые проекты, нужно успевать за скоростью итерации технологий.
in:description 单点登录 language:java pushed:>2019-12-01
Вообще говоря, проекты с большим количеством звезд и частым обслуживанием — отличные проекты с открытым исходным кодом.
разное
Также может быть основано на договореlicense:
; или автор проектаuser:
; или размер складаsize:>=
; количество подписчиковfollowers:
, но все используют его реже.
Расширенный поиск
Фактически, в дополнение к использованию этого конкретного квалификатора для фильтрации github также предоставляет нам отфильтрованную ссылку для поиска.
https://github.com/search/advanced
По сути, это окно фильтра критериев поиска с интерфейсом.Вы можете добавить этот интерфейс расширенного поиска в закладки, если не помните, что искали ключевые слова или слова.
Заканчивать
Что ж, сегодняшняя статья здесь первая. Я Лу Имин, спасибо, что продолжаете уделять внимание моему официальному аккаунту:java ментальная карта!
Наконец, я отправлю вам две копии вопросов интервью 2019 года (с ответами):Нажмите, чтобы получить