Making as the world’s biggest open source software project hosting platform, believes that many programmers are in use, not only because it can be free for our public or private code warehouse, because a lot more with a lot of open source programs or resources, takes the concept of free open source, attracted a large number of individual or enterprise developers.

So in the face of such a massive code warehouse, how to search for more excellent, more in line with their needs of the project in the numerous resources?

For example, if I want to search for a SpringBoot project, do you just type in the springboot keyword and the search comes up with 118,085 results? Of course, you can also do some simple sorting, like by stars, number of Forks.

If you find that github pages load slowly or images don’t open, open the hosts file (C:\Windows\System32\drivers\etc) and add the following:

192.30.253.113 151.101.113.194 151.101.184.133 github.global.ssl.fastly.net github.com assets-cdn.github.com 151.101.184.133 151.101.184.133 151.101.184.133 gist.githubusercontent.com raw.githubusercontent.com Cloud.githubusercontent.com 151.101.184.133 151.101.184.133 camo.githubusercontent.com avatars0.githubusercontent.com 151.101.184.133 151.101.184.133 151.101.184.133 avatars2.githubusercontent.com avatars1.githubusercontent.com Avatars3.githubusercontent.com 151.101.184.133 151.101.184.133 at avatars4.githubusercontent.com Avatars5.githubusercontent.com 151.101.184.133 151.101.184.133 at avatars6.githubusercontent.com Avatars7.githubusercontent.com 151.101.184.133 avatars8.githubusercontent.comCopy the code

But are the results really accurate? Let’s take a look at some of the common Github search techniques we use to make our results more accurate.

Let’s start with a mind map:

The above search skills are divided into two categories, one is commonly used and the other is more. The commonly used part should be the most frequently used part in our daily life, so we need to remember it.

1, in

The in keyword is used to limit the scope of the search. You can specify whether to search for the keyword in the name, description, or README document

  • In :name: Specifies that the search scope is the warehouse name
  • In :description: Specifies that the search scope is in the summary
  • In: readME: Specifies that the search scope is in the README document

For example, if you specify the project repository name springboot, mybatis, demo, then search as follows:

in:name springboot mybatis demo
Copy the code

Here are the results:

The resulting project is a simple demo integration project, not a comprehensive project. You can also search like:

in: Description Springboot MyBatis integrationCopy the code

() 2

The number of stars and forks on a project is usually a good indicator of how good a project is. Of course, this is not always the case. There are a lot of good projects hidden on Github, just waiting to be discovered.

The way is as follows:

  • Stars :> : Filters the warehouses whose stars number is greater than a certain value
  • stars:start.. End: filters the warehouses with stars in the start and end ranges
  • fork:>
  • fork:start.. end

So, by using the stars and Forks keywords, we can filter some of them by the number of stars and forks. For example, I want to filter search results for items that have more than 50 stars. So here it is:

in:name springboot mybatis demo stars:>50
Copy the code

After screening, only two results meet the requirements:

3, language

This is simple, specifying the language in which the project is written, such as Java, Python, PHP, and so on. For example, if we search for single sign-on, if we search for in: Description single sign-on, the results will include projects in various languages, but if you add the Java language qualification, the results will only be in Java.

in:description 单点登录 language:java
Copy the code

4, created, pushed

Creation date and update date. Project for a long time not to maintain, or project has been created for a long time, the project technology sometimes is out of date, such as Springboot version 1.5 before creating the project, it is not fit now, now we learn words directly to fit more than 2.0 version is better, so looking for a new project, will also have to closely to technology of iteration speed.

in:description SINGLE sign-on language: Java pushed:>2019-12-01Copy the code

In general, projects with a high number of stars and frequent maintenance are the best open source projects.

other

According to the protocol license:; Or project author user:; Size :>=; Followers only they use them less.

Advanced search

In addition to using this specific qualifier to filter, Github actually provides a filter for search links.

https://github.com/search/advanced
Copy the code

In fact, the interface is the search criteria filter box, can not remember the search keywords or words when the advanced search interface ha.

The end of the

Well, that’s it for today. My name is Lu Yiming. Thank you for paying attention to my official account: Java Mind Map!

Finally, send two copies of the 2019 interview questions (with answers) to everyone: click to receive