Que fait gh-issue-sync ?
Synchronise les issues GitHub vers des fichiers Markdown locaux dans .issues/open/ et .issues/closed/.
Commandes
gh-issue-sync init # Initialiser dans un dépôt git
gh-issue-sync pull # Récupérer les issues ouvertes (--all pour les fermées aussi)
gh-issue-sync push # Pousser les modifications locales (--dry-run pour prévisualiser)
gh-issue-sync list # Lister les issues (supporte les options de gh issue list + --search)
gh-issue-sync new "Titre" # Créer une issue (--label, --edit)
gh-issue-sync close 42 # Fermer (--reason completed|not_planned)
gh-issue-sync reopen 42
gh-issue-sync status # Afficher les modifications locales
gh-issue-sync diff 42 # Afficher la différence (--remote pour re-récupérer)
Format de fichier
.issues/open/42-correction-bug-connexion.md :
---
title: Correction bug connexion
labels: [bug, priorité:haute]
assignees: [alice]
milestone: v1.0
state: open
# Pour fermé : state_reason: completed|not_planned
# Optionnel : parent: 10, blocked_by: [11, 12], blocks: [15]
---
Corps de l'issue en Markdown.
Le numéro de l'issue est dérivé du nom de fichier, pas stocké dans le frontmatter.
Issues temporaires
Les nouvelles issues reçoivent un ID préfixé par T (ex. T1a2b3c). Le nom de fichier doit commencer par T :
.issues/open/T1a2b3c-ma-nouvelle-issue.md
Lors du push, le fichier est renommé avec le vrai numéro d'issue (ex. 42-ma-nouvelle-issue.md) et number: dans le frontmatter est mis à jour. Toutes les références #T1a2b3c dans d'autres issues sont également mises à jour vers #42.
Commentaires
Pour poster un commentaire lors du push, créez un fichier .comment.md à côté de l'issue :
.issues/open/42.comment.md
.issues/open/42-correction-bug-connexion.comment.md
Le contenu est en Markdown simple. Le fichier est supprimé après que le commentaire soit posté.
Notes
- Le pull ignore les conflits ; utilisez
--forcepour écraser les fichiers locaux.