Un outil CLI pour rechercher GitHub depuis le terminal.
Stig est un outil CLI permettant de rechercher GitHub depuis le terminal. Avec la possibilité de trier et de filtrer les résultats, Stig vous permet de trouver facilement ce que vous recherchez. Stig peut également imprimer un fichier README.md des référentiels sur la sortie standard, afin que vous puissiez rapidement en savoir plus sur un projet.
Un élément de résultat de recherche typique ressemblera à ce qui suit :
- 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 référentiel forké affichera un symbole >
, au lieu du symbole <
par défaut.
Les derniers symboles mis à jour sont mappés aux éléments suivants :
s : seconds
m : minutes
h : hours
D : days
W : weeks
M : months
Y : years
A la fin des résultats, un résumé sera affiché :
- current results
| - total results
| | - current page
| | | - total pages
| | | | - requests remaining
| | | | | - requests limit
| | | | | |
1-5/81 results | 1/17 pages | 9/10 limit
Un émulateur de terminal prenant en charge les codes d'échappement ansi et les vraies couleurs est requis lorsque la sortie couleur est activée. La majorité des émulateurs de terminaux populaires devraient prendre en charge les deux. Bien que l'activation de la sortie colorée offre la meilleure expérience, elle peut être ajustée à l'aide de l'option --color
, en prenant soit on
, off
ou auto
comme entrées, auto étant la valeur par défaut.
Par défaut, l'API GitHub autorise jusqu'à 10 requêtes de recherche par minute. Pour étendre la limite à 30 requêtes de recherche par minute, vous pouvez transmettre un jeton GitHub avec l'option --token
.
Pour plus d'informations sur la création d'un nouveau jeton d'accès personnel, reportez-vous à l'article d'aide GitHub suivant.
Il est possible d'utiliser un point de terminaison d'API personnalisé pour la compatibilité avec les installations de GitHub Enterprise à l'aide de l'option --host
. L'hôte doit être formaté comme suit : subdomain.domain.tld
. Il est prévu que le point de terminaison soit servi via HTTPS sur le port 443 .
Important
Lorsque vous utilisez l'option
--host
, utilisez uniquement l'option--token
avec un point de terminaison d'API personnalisé approuvé. Si un hôte incorrect est transmis avec un jeton, il serait sage de révoquer immédiatement le jeton et d'en créer un nouveau.
# 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
La commande shell suivante construira le projet en mode release :
./build.sh
Pour construire en mode débogage, exécutez le script avec l'indicateur --debug
.
La commande shell suivante installera le projet en mode release :
./install.sh
Pour installer en mode débogage, exécutez le script avec l'indicateur --debug
.
Ce projet est sous licence MIT.
Copyright (c) 2018-2019 Brett Robinson
L'autorisation est accordée par la présente, gratuitement, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le « Logiciel »), d'utiliser le Logiciel sans restriction, y compris, sans limitation, les droits d'utilisation, de copie, de modification, de fusion. , publier, distribuer, accorder des sous-licences et/ou vendre des copies du Logiciel, et permettre aux personnes à qui le Logiciel est fourni de le faire, sous réserve des conditions suivantes :
L'avis de droit d'auteur ci-dessus et cet avis d'autorisation doivent être inclus dans toutes les copies ou parties substantielles du logiciel.
LE LOGICIEL EST FOURNI « EN L'ÉTAT », SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS MAIS SANS LIMITATION LES GARANTIES DE QUALITÉ MARCHANDE, D'ADAPTATION À UN USAGE PARTICULIER ET DE NON-VIOLATION. EN AUCUN CAS LES AUTEURS OU LES TITULAIRES DES DROITS D'AUTEUR NE SERONT RESPONSABLES DE TOUTE RÉCLAMATION, DOMMAGES OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS UNE ACTION CONTRACTUELLE, DÉLIT OU AUTRE, DÉCOULANT DE, DE OU EN RELATION AVEC LE LOGICIEL OU L'UTILISATION OU D'AUTRES TRANSACTIONS DANS LE LOGICIEL.