Configuration

Ignorer des fichiers

Contrôle les fichiers auxquels Bob Shell peut accéder en créant un fichier `.bobignore` dans ton projet.

Vue d'ensemble

FonctionnalitéDescriptionAvantage
Exclusion de cheminEmpêche Bob Shell d'accéder à des fichiers ou répertoires spécifiquesProtège les informations sensibles
Correspondance de modèlesUtilise des modèles glob pour correspondre à plusieurs fichiersExclure efficacement des types de fichiers
Support de négationRemplace les exclusions pour des fichiers spécifiquesContrôle précis
Spécifique au projetChaque projet peut avoir ses propres règles d'exclusionPersonnalisé selon les besoins du projet

Pourquoi utiliser .bobignore ?

  • Protection de la confidentialité : Garde les fichiers sensibles comme les clés API et les identifiants privés
  • Amélioration des performances : Exclut les gros fichiers binaires ou répertoires qui ralentissent les opérations
  • Réduction du bruit : Supprime les fichiers non pertinents du contexte de Bob Shell
  • Contrôle du focus : Dirige l'attention de Bob Shell vers les parties les plus pertinentes de ta base de code

Comment fonctionne .bobignore

Quand tu ajoutes des chemins à ton fichier .bobignore, les outils Bob Shell qui respectent ce fichier excluront automatiquement les fichiers et répertoires correspondants de leurs opérations. Par exemple, lors de l'utilisation de la commande read_many_files, les chemins dans ton fichier .bobignore seront ignorés.

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│                 │     │                 │     │                 │
│  Your project   │────▶│  .bobignore     │────▶│  Files Bob Shell │
│  files          │     │  filter         │     │  can access     │
│                 │     │                 │     │                 │
└─────────────────┘     └─────────────────┘     └─────────────────┘

Les modifications apportées à ton fichier .bobignore nécessitent de redémarrer ta session Bob Shell pour prendre effet.

Syntaxe des modèles

Le fichier .bobignore suit la même syntaxe de modèles que .gitignore :

ModèleDescriptionExemple
file.txtCorrespond à un fichier spécifiqueapikeys.txt
*.extCorrespond à tous les fichiers avec l'extension*.log
/dir/Correspond à un répertoire/node_modules/
/path/to/fileAncre le chemin à la racine/src/config/secrets.json
!patternAnnule un modèle précédent!important.md
#Ligne de commentaire# API credentials

Démarrage

Créer un fichier .bobignore

  1. Crée un fichier nommé .bobignore à la racine du répertoire de ton projet
  2. Ajoute des modèles pour les fichiers et répertoires que tu veux exclure
  3. Sauvegarde le fichier et redémarre ta session Bob Shell
# Depuis la racine de ton projet
touch .bobignore
echo "# Files to ignore" > .bobignore
echo "secrets/" >> .bobignore

Modèles d'exclusion courants

Voici quelques modèles courants que tu pourrais vouloir ajouter à ton fichier .bobignore :

# Sensitive information
.env
secrets/
*password*
*credential*
*apikey*

# Large directories
node_modules/
.git/
dist/
build/

# Binary and media files
*.zip
*.tar.gz
*.mp4
*.jpg
*.png

# Log files
*.log
logs/

Exemples de modèles

Exclure des répertoires spécifiques

Pour exclure des répertoires entiers et leur contenu :

# Exclude the packages directory and all its contents
/packages/

# Exclude all node_modules directories anywhere in the project
**/node_modules/

# Exclude the dist directory but only at the root level
/dist/

Utiliser des caractères génériques

Les caractères génériques te permettent de correspondre à plusieurs fichiers avec des modèles similaires :

# Exclude all markdown files
*.md

# Exclude all JavaScript files in the src directory
/src/**/*.js

# Exclude all files with "test" in their name
*test*

Utiliser la négation

Tu peux remplacer les exclusions pour des fichiers spécifiques :

# Exclude all markdown files
*.md

# But include README.md
!README.md

# And include all markdown files in the docs directory
!docs/*.md

Utilisation avancée

Combiner des modèles

Tu peux créer des règles d'exclusion sophistiquées en combinant des modèles :

# Exclude all JavaScript files
*.js

# But include all files in the src directory
!src/**/*.js

# Except for test files in the src directory
src/**/*.test.js

Déboguer ton fichier .bobignore

Si Bob Shell semble ignorer des fichiers auxquels tu veux qu'il accède, ou accède à des fichiers que tu veux ignorer :

  1. Vérifie ton fichier .bobignore pour les modèles conflictuels
  2. Rappelle-toi que les modèles plus spécifiques (comme les négations) doivent venir après les modèles généraux
  3. Redémarre ta session Bob Shell après avoir effectué des modifications
  4. Utilise des chemins absolus si les chemins relatifs ne fonctionnent pas comme prévu

Bonnes pratiques

  • Commence simplement : Commence avec quelques modèles essentiels et en ajoute d'autres selon les besoins
  • Commente tes modèles : Ajoute des commentaires pour expliquer pourquoi certains fichiers sont exclus
  • Sois précis : Utilise des modèles précis pour éviter d'exclure accidentellement des fichiers importants
  • Pense à la sécurité : Exclut toujours les fichiers contenant des informations sensibles
  • Maintiens régulièrement : Mets à jour ton fichier .bobignore au fur et à mesure que ton projet évolue
Comment trouvez-vous ce sujet ?