mirror of
https://gitlab.com/free_zed/free_zed.gitlab.io.git
synced 2024-06-09 11:52:31 +00:00
f348579a90
Remove ` ` by ` `, less painfull to read
107 lines
3.4 KiB
Markdown
107 lines
3.4 KiB
Markdown
Title: GHI - GitHub Issues
|
||
Category: Bloc-notes
|
||
Date: 2018.11.29 21:21
|
||
Status: published
|
||
Slug: ghi-git-hub-issues
|
||
Summary: Exemples basiques de l'utilisation de `ghi`
|
||
Tags: git, dev, cli, pythonclassmates
|
||
|
||
|
||
`ghi` : _GitHub Issues on the command line. Use your `$EDITOR`, not your browser._
|
||
|
||
CLI vs GUI, pour moi le choix est souvent vite fait. Du coup ça fait quelques temps que je gère dès que possible mes` issues `github en CLI à l'aide de [ghi](https://github.com/stephencelis/ghi), un client dédié aux `issues` GitHub éccrit en Ruby.
|
||
|
||
La vrai feature qui me manque est l'affectation d'un `project`, dommage… Mais sinon on fait des trucs directement en console qui font _vraiment_ gagner du temps :
|
||
|
||
Liste les `issues` & `pulls` open :
|
||
|
||
```shell
|
||
~/git/pythonclassmates.org $ ghi list
|
||
# PythonClassmates/pythonclassmates.org open issues
|
||
19: License proposal ↑
|
||
18: License proposal ↑
|
||
16: Travis CI rollback has not been runned
|
||
15: Installation HowTo
|
||
14: About page is missing
|
||
13: Error 404 on category/tutoriels.html
|
||
12: Error 404 on category/news.html
|
||
```
|
||
Seulement les` issues `:
|
||
|
||
```shell
|
||
~/git/pythonclassmates.org $ ghi list --no-pulls
|
||
# PythonClassmates/pythonclassmates.org open issues
|
||
16: Travis CI rollback has not been runned
|
||
15: Installation HowTo
|
||
14: About page is missing
|
||
13: Error 404 on category/tutoriels.html
|
||
12: Error 404 on category/news.html
|
||
```
|
||
|
||
Affiche l'`issue 14`
|
||
```shell
|
||
~/git/pythonclassmates.org $ ghi 14
|
||
#14: About page is missing
|
||
@freezed opened this issue 23 hours ago. open
|
||
|
||
With links to :
|
||
- [ ] pelican
|
||
- [ ] template
|
||
- [ ] github
|
||
|
||
```
|
||
|
||
`--web` ouvre la page dans votre navigateur : `ghi list --web`, `ghi 14 --web`, etc.
|
||
|
||
Bien sûr `ghi edit …` permet d'en éditer une (!)
|
||
|
||
Et `ghi open …` d'en créer. Tellement pratique quand on code et que l'on tombe sur un bug, une idée, ou autre… Fini le _«Je noterai ça tout à l'heure»_ qu'on aura oublié dans 5 minutes. Là en 15s c'est plié. Et avec l'habitude on y met presque tout :
|
||
|
||
```shell
|
||
ghi open --claim --label bug --label test --message "Test de la class Adallas à améliorer
|
||
|
||
Et là avec le double quote on laisse une ligne et on peut ajouter tous les
|
||
commentaires utiles.
|
||
|
||
Bon si comme moi vous êtes des maniaque le l'historique de votre shell, arretez
|
||
vous après `--message` et vous pourrez éditer votre issue dans votre éditeur,
|
||
par ce que là votre historique va dérouiller…
|
||
|
||
Les check-box du GHFMD sont aussi possible :
|
||
- [ ] foo
|
||
- [ ] bar
|
||
- [ ] foobar
|
||
|
||
Et quand on a fini de raconter sa vie on ferme la double quote. Hoplà!"
|
||
```
|
||
Aller pour finir un petit one-liner en shell pour créer les` issues `à partir d'un fichier texte (`issues.txt`) que l'on aura rempli avec un titre d'issue par ligne. Idéal en début de projet quand on à toute la roadmap à renseigner…
|
||
|
||
```shell
|
||
$ cat issues.txt
|
||
test issue #11
|
||
test issue #22
|
||
Foobar
|
||
```
|
||
puis
|
||
|
||
```shell
|
||
$ IFS='';while read issue; do ghi open --claim --label test --message "${issue}";done < issues.txt
|
||
#32: test issue #11
|
||
@freezed opened this issue 0 seconds ago. open
|
||
@freezed is assigned. test
|
||
|
||
Opened on freezed/python.
|
||
#33: test issue #22
|
||
@freezed opened this issue 0 seconds ago. open
|
||
@freezed is assigned. test
|
||
|
||
Opened on freezed/python.
|
||
#34: Foobar
|
||
@freezed opened this issue 0 seconds ago. open
|
||
@freezed is assigned. test
|
||
```
|
||
|
||
Bon code!
|
||
|
||
_[ Article publié sur [www.pythonclassmates.org](https://www.pythonclassmates.org/ghi-git-hub-issues.html) ]_
|