Utilisation de base
Démarrage rapide
Empaquetez tout votre dépôt:
repomixCas d'utilisation courants
Empaqueter des répertoires spécifiques
repomix path/to/directoryInclure des fichiers spécifiques
Utilisez des motifs glob:
repomix --include "src/**/*.ts,**/*.md"Exclure des fichiers
repomix --ignore "**/*.log,tmp/"Dépôts distants
# En utilisant l'URL GitHub
repomix --remote https://github.com/user/repo
# En utilisant le format abrégé
repomix --remote user/repo
# Branche/tag/commit spécifique
repomix --remote user/repo --remote-branch main
repomix --remote user/repo --remote-branch 935b695Entrée de liste de fichiers (stdin)
Passez les chemins de fichiers via stdin pour une flexibilité ultime:
# En utilisant la commande find
find src -name "*.ts" -type f | repomix --stdin
# En utilisant git pour obtenir les fichiers suivis
git ls-files "*.ts" | repomix --stdin
# En utilisant grep pour trouver des fichiers contenant du contenu spécifique
grep -l "TODO" **/*.ts | repomix --stdin
# En utilisant ripgrep pour trouver des fichiers avec du contenu spécifique
rg -l "TODO|FIXME" --type ts | repomix --stdin
# En utilisant ripgrep (rg) pour trouver des fichiers
rg --files --type ts | repomix --stdin
# En utilisant sharkdp/fd pour trouver des fichiers
fd -e ts | repomix --stdin
# En utilisant fzf pour sélectionner à partir de tous les fichiers
fzf -m | repomix --stdin
# Sélection interactive de fichiers avec fzf
find . -name "*.ts" -type f | fzf -m | repomix --stdin
# En utilisant ls avec des motifs glob
ls src/**/*.ts | repomix --stdin
# À partir d'un fichier contenant des chemins de fichiers
cat file-list.txt | repomix --stdin
# Entrée directe avec echo
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdinL'option --stdin vous permet de transmettre une liste de chemins de fichiers à Repomix, offrant une flexibilité ultime dans la sélection des fichiers à empaqueter.
Lorsque vous utilisez --stdin, les fichiers spécifiés sont effectivement ajoutés aux motifs d'inclusion. Cela signifie que le comportement normal d'inclusion et d'exclusion s'applique toujours - les fichiers spécifiés via stdin seront toujours exclus s'ils correspondent aux motifs d'exclusion.
NOTE
Lors de l'utilisation de --stdin, les chemins de fichiers peuvent être relatifs ou absolus, et Repomix gèrera automatiquement la résolution des chemins et la déduplication.
Compression de code
repomix --compress
# Vous pouvez également l'utiliser avec des dépôts distants:
repomix --remote yamadashy/repomix --compressIntégration Git
Inclure des informations Git pour fournir un contexte de développement pour l'analyse IA :
# Inclure les diffs git (modifications non commitées)
repomix --include-diffs
# Inclure les journaux de commits git (derniers 50 commits par défaut)
repomix --include-logs
# Inclure un nombre spécifique de commits
repomix --include-logs --include-logs-count 10
# Inclure à la fois les diffs et les journaux
repomix --include-diffs --include-logsCela ajoute un contexte précieux sur :
- Modifications récentes : Les diffs Git montrent les modifications non commitées
- Modèles de développement : Les journaux Git révèlent quels fichiers sont généralement modifiés ensemble
- Historique des commits : Les messages de commits récents donnent un aperçu du focus de développement
- Relations entre fichiers : Comprendre quels fichiers sont modifiés dans les mêmes commits
Optimisation du nombre de jetons
Comprendre la distribution des jetons de votre base de code est crucial pour optimiser les interactions IA. Utilisez l'option --token-count-tree pour visualiser l'utilisation des jetons dans votre projet entier:
repomix --token-count-treeCela affiche une vue hiérarchique de votre base de code avec les comptes de jetons:
🔢 Token Count Tree:
────────────────────
└── src/ (70,925 tokens)
├── cli/ (12,714 tokens)
│ ├── actions/ (7,546 tokens)
│ └── reporters/ (990 tokens)
└── core/ (41,600 tokens)
├── file/ (10,098 tokens)
└── output/ (5,808 tokens)Vous pouvez également définir un seuil minimum de jetons pour vous concentrer sur les fichiers plus volumineux:
repomix --token-count-tree 1000 # Afficher uniquement les fichiers/répertoires avec 1000+ jetonsCela vous aide à:
- Identifier les fichiers lourds en jetons - qui pourraient dépasser les limites de contexte IA
- Optimiser la sélection de fichiers - en utilisant les motifs
--includeet--ignore - Planifier les stratégies de compression - en ciblant les plus gros contributeurs
- Équilibrer contenu vs contexte - lors de la préparation du code pour l'analyse IA
Formats de sortie
XML (Par défaut)
repomix --style xmlMarkdown
repomix --style markdownJSON
repomix --style jsonTexte brut
repomix --style plainOptions supplémentaires
Supprimer les commentaires
repomix --remove-commentsAfficher les numéros de ligne
repomix --output-show-line-numbersCopier dans le presse-papiers
repomix --copyDésactiver la vérification de sécurité
repomix --no-security-checkConfiguration
Initialiser le fichier de configuration:
repomix --initConsultez le Guide de configuration pour les options détaillées.