Github search from the cli
Project description
gh-search
GitHub code search from your cli
Features
- All features of GitHub Search API (eg. search qualifiers)
- Apply filters on the GitHub Search API response (eg. ignore archived repos or search for additional text in matched content)
- View search results grouped by repo
- Works with GitHub Enterprise
Installation
pip install gh-search
Usage
IMPORTANT: This tool requires that you GitHub token set on the GITHUB_TOKEN
envvar (or passed to the script via the --github-token
option).
Invoke with gh-search
and pass a query string as the first argument. For example, to search for the string "usage" in this repo:
gh-search usage repo:janeklb/gh-search
Note that repo:
is a search qualifier natively supported by the GitHub Search API.
gh-search
also offers the following options
-a
/--include-archived
: include results from archived repos (default behaviour is to exclude results from archived repositories).-p TEXT
/--path-filter TEXT
: similar to thepath:
search qualifier, but a bit more flexible as it does a string match on the path (rather than relying on GitHub's indexed path components). For example-p cat
will show matches against a file calledmycat.json
whereaspath:cat
will not.-c TEXT
/--content-filter TEXT
: applies a string match on the content of a search result. A bit more flexible than specifying an additional search term in the search query, tests for a string match directly on the text content rather than relying on how GitHub has indexed a file for searching.-v
: verbose output, print information about the repos being scanned and ignored via filters
Enterprise
If you want to search against GitHub Enterprise set the GITHUB_API_URL
envvar with a URL to the v3 api endpoint. eg. GITHUB_API_URL=https://git.mycompany.net/api/v3
. You can also use the --github-api-url
option for this.
Developing
make install-dev
install dev dependencies (set up your own virtual environment first)make unit
run unit testsmake lint
run linters
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gh_search-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66201d8f2e4243892faf323e63281ede514db54992486db3fb1423e9bbd90c88 |
|
MD5 | 32a1ffc0cbafc7a0b669f16a3e25cc50 |
|
BLAKE2b-256 | 47973a9625b9b291d0faaf870a8a21aa85b24e8b13d65e21c00faed7ae73a5fd |