Una herramienta CLI para buscar en GitHub desde la terminal.
Stig es una herramienta CLI para buscar en GitHub desde la terminal. Con la capacidad de ordenar y filtrar resultados, Stig hace que sea fácil encontrar lo que estás buscando. Stig también puede imprimir un README.md de repositorios en la salida estándar, para que pueda aprender más rápidamente sobre un proyecto.
Un elemento de resultado de búsqueda típico tendrá el siguiente aspecto:
- owner
| - repo
| | - stars
| | | - forks
| | | | - issues
| | | | | - language
| | | | | | - last updated
| | | | | | | - summary
| | | | | | | |
octobanana/stig *12 <3 !4 [C++] 5h
A CLI tool for searching GitHub from the terminal.
Un repositorio bifurcado mostrará un símbolo >
, en lugar del símbolo <
predeterminado.
Los últimos símbolos actualizados se asignan a lo siguiente:
s : seconds
m : minutes
h : hours
D : days
W : weeks
M : months
Y : years
Al final de los resultados se mostrará un resumen:
- current results
| - total results
| | - current page
| | | - total pages
| | | | - requests remaining
| | | | | - requests limit
| | | | | |
1-5/81 results | 1/17 pages | 9/10 limit
Se requiere un emulador de terminal que admita códigos de escape ansi y color verdadero cuando la salida en color está habilitada. La mayoría de los emuladores de terminales populares deberían admitir ambos. Si bien tener la salida en color habilitada brinda la mejor experiencia, se puede ajustar usando la opción --color
, tomando on
, off
o auto
como entradas, siendo auto el valor predeterminado.
De forma predeterminada, la API de GitHub permite hasta 10 consultas de búsqueda por minuto. Para ampliar el límite a 30 consultas de búsqueda por minuto, puede pasar un token de GitHub con la opción --token
.
Para obtener más información sobre la creación de un nuevo token de acceso personal, consulte el siguiente artículo de ayuda de GitHub.
Es posible utilizar un punto final API personalizado para compatibilidad con instalaciones de GitHub Enterprise usando la opción --host
. El host debe tener el formato subdomain.domain.tld
. Se espera que el punto final se proporcione a través de HTTPS en el puerto 443 .
Importante
Cuando utilice la opción
--host
, utilice únicamente la opción--token
con un punto final de API personalizado confiable. Si se pasa un host incorrecto junto con un token, sería prudente revocar inmediatamente el token y crear uno nuevo.
# query 'stig' showing '20' results from page '1'
$ stig --query ' stig ' --number 20 --page 1
# query 'stig' with filter 'language:cpp'
$ stig --query ' stig ' --filter ' language:cpp '
# query 'stig' and pipe into less
$ stig --query ' stig ' | less
# query 'all' sorted by 'stars' with filter 'language:js'
$ stig --query ' ' --sort ' stars ' --filter ' language:js '
# query 'http server' with filters 'language:cpp' and 'stars:>10'
$ stig --query ' http server ' --filter ' language:cpp stars:>10 '
# output the README.md for 'octobanana/stig' on default branch
$ stig --readme ' octobanana/stig '
# output the README.md for 'octobanana/stig' on branch 'master'
$ stig --readme ' octobanana/stig/master '
# output the README.md for 'octobanana/stig' on default branch and pipe into less
$ stig --readme ' octobanana/stig ' | less
# output the program help
$ stig --help
# output the program version
$ stig --version
./src/ob/belle.hh
./src/ob/parg.hh
./src/lib/json.hh
El siguiente comando de shell construirá el proyecto en modo de lanzamiento:
./build.sh
Para compilar en modo de depuración, ejecute el script con el indicador --debug
.
El siguiente comando de shell instalará el proyecto en modo de lanzamiento:
./install.sh
Para instalar en modo de depuración, ejecute el script con el indicador --debug
.
Este proyecto está bajo la licencia MIT.
Copyright (c) 2018-2019 Brett Robinson
Por el presente se otorga permiso, sin cargo, a cualquier persona que obtenga una copia de este software y los archivos de documentación asociados (el "Software"), para operar con el Software sin restricciones, incluidos, entre otros, los derechos de uso, copia, modificación, fusión. , publicar, distribuir, sublicenciar y/o vender copias del Software, y permitir que las personas a quienes se les proporciona el Software lo hagan, sujeto a las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO PERO NO LIMITADO A LAS GARANTÍAS DE COMERCIABILIDAD, IDONEIDAD PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE DERECHOS DE AUTOR SERÁN RESPONSABLES DE NINGÚN RECLAMO, DAÑO U OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN CONTRACTUAL, AGRAVIO O DE OTRA MANERA, QUE SURJA DE, FUERA DE O EN RELACIÓN CON EL SOFTWARE O EL USO U OTRAS NEGOCIOS EN EL SOFTWARE.