Corrections de sécurité (Bandit): - Fix vulnérabilité HIGH Jinja2 XSS avec documentation de sécurité - Ajout timeouts sur toutes les requêtes HTTP (17 occurrences) * utils/gitea.py: 3 timeouts (10s) * app/fiches/interface.py: 1 timeout (10s) * scripts/auto_ingest.py: 2 timeouts (10-30s) * scripts/generer_analyse.py: 10 timeouts (10-120s) * Corpus/generer_analyse.py: 2 timeouts (30-120s) Documentation et configuration: - docs/SECURITY.md: Guide complet de sécurité avec analyse Bandit - docs/GUIDE_GITDOC.md: Guide d'utilisation GitDoc pour autocommit - Configuration GitDoc complète dans settings.json.example - Configuration .gitignore pour .vscode/settings.json - Recommandations extensions VSCode (SonarLint, Snyk, GitDoc) - Mise à jour README avec statut sécurité Résultats Bandit: - 0 vulnérabilités HIGH - 0 vulnérabilités MEDIUM - Tests: 67 passent, couverture 16% 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
194 lines
4.5 KiB
Markdown
194 lines
4.5 KiB
Markdown
# Guide GitDoc - Autocommit
|
|
|
|
Ce guide explique comment utiliser GitDoc pour l'autocommit automatique des fichiers.
|
|
|
|
## Qu'est-ce que GitDoc ?
|
|
|
|
GitDoc est une extension VSCode qui committe automatiquement vos modifications dans git après un certain délai.
|
|
|
|
**Extension:** `vsls-contrib.gitdoc`
|
|
|
|
## Limitation importante
|
|
|
|
**GitDoc ne committe QUE les fichiers déjà suivis par git.**
|
|
|
|
Cela signifie:
|
|
- Les fichiers modifiés sont auto-committés
|
|
- Les nouveaux fichiers (non suivis) ne sont PAS auto-committés
|
|
|
|
Pour les nouveaux fichiers, vous devez d'abord les ajouter manuellement:
|
|
```bash
|
|
git add nouveau_fichier.py
|
|
```
|
|
|
|
Après cela, GitDoc les committera automatiquement lors de modifications futures.
|
|
|
|
## Installation
|
|
|
|
1. Ouvrir VSCode
|
|
2. `Ctrl+Shift+X` pour ouvrir les extensions
|
|
3. Rechercher `GitDoc`
|
|
4. Installer `GitDoc` par `vsls-contrib`
|
|
|
|
## Configuration
|
|
|
|
La configuration est dans `.vscode/settings.json`:
|
|
|
|
```json
|
|
{
|
|
"gitdoc.enabled": true,
|
|
"gitdoc.autoCommitDelay": 30000,
|
|
"gitdoc.commitMessageFormat": "docs: GitDoc update",
|
|
"gitdoc.commitValidationLevel": "none",
|
|
"gitdoc.autoPull": "off",
|
|
"gitdoc.autoPush": "off"
|
|
}
|
|
```
|
|
|
|
### Paramètres expliqués
|
|
|
|
| Paramètre | Valeur | Description |
|
|
|-----------|--------|-------------|
|
|
| `gitdoc.enabled` | `true` | Active GitDoc |
|
|
| `gitdoc.autoCommitDelay` | `30000` | Délai avant commit (30 secondes) |
|
|
| `gitdoc.commitMessageFormat` | `"docs: GitDoc update"` | Format du message de commit |
|
|
| `gitdoc.commitValidationLevel` | `"none"` | Pas de validation (évite les blocages) |
|
|
| `gitdoc.autoPull` | `"off"` | Pas de pull automatique |
|
|
| `gitdoc.autoPush` | `"off"` | Pas de push automatique |
|
|
|
|
## Utilisation
|
|
|
|
### Activation/Désactivation
|
|
|
|
GitDoc s'active automatiquement si `gitdoc.enabled: true`.
|
|
|
|
Pour le désactiver temporairement:
|
|
- `Ctrl+Shift+P` → `GitDoc: Disable`
|
|
|
|
Pour le réactiver:
|
|
- `Ctrl+Shift+P` → `GitDoc: Enable`
|
|
|
|
### Voir les commits GitDoc
|
|
|
|
```bash
|
|
git log --oneline --grep="GitDoc"
|
|
```
|
|
|
|
### Workflow recommandé
|
|
|
|
1. **Nouveaux fichiers** - Ajouter manuellement
|
|
```bash
|
|
git add nouveau_fichier.py
|
|
git commit -m "feat: Ajouter nouveau fichier"
|
|
```
|
|
|
|
2. **Modifications de fichiers existants** - Automatique
|
|
- GitDoc committe automatiquement après 30 secondes
|
|
|
|
3. **Squash des commits GitDoc** (avant PR)
|
|
```bash
|
|
git rebase -i HEAD~10 # Remplacer 10 par le nombre de commits
|
|
# Marquer les commits GitDoc comme "fixup" ou "squash"
|
|
```
|
|
|
|
## Problèmes courants
|
|
|
|
### GitDoc ne fonctionne pas
|
|
|
|
**Vérifications:**
|
|
|
|
1. **Extension installée?**
|
|
```
|
|
Ctrl+Shift+X → Rechercher "GitDoc"
|
|
```
|
|
|
|
2. **Configuration présente?**
|
|
```bash
|
|
cat .vscode/settings.json | grep gitdoc
|
|
```
|
|
|
|
3. **Fichier déjà suivi par git?**
|
|
```bash
|
|
git ls-files | grep mon_fichier
|
|
```
|
|
|
|
Si le fichier n'apparaît pas:
|
|
```bash
|
|
git add mon_fichier
|
|
```
|
|
|
|
4. **GitDoc activé?**
|
|
- Regarder la barre de statut VSCode (en bas)
|
|
- Devrait afficher "GitDoc" avec une icône
|
|
|
|
### Le fichier settings.json apparaît dans git status
|
|
|
|
Si `.vscode/settings.json` apparaît dans `git status`:
|
|
|
|
```bash
|
|
# Vérifier qu'il est dans .gitignore
|
|
grep "settings.json" .gitignore
|
|
|
|
# S'il n'y est pas, l'ajouter
|
|
echo ".vscode/settings.json" >> .gitignore
|
|
|
|
# Retirer du suivi git (garde le fichier local)
|
|
git rm --cached .vscode/settings.json
|
|
git commit -m "fix: Retirer settings.json du versioning"
|
|
```
|
|
|
|
### Trop de commits GitDoc
|
|
|
|
Si vous avez beaucoup de commits GitDoc, vous pouvez les squasher:
|
|
|
|
```bash
|
|
# Rebase interactif sur les 20 derniers commits
|
|
git rebase -i HEAD~20
|
|
|
|
# Dans l'éditeur, remplacer "pick" par "fixup" pour les commits GitDoc
|
|
# Sauvegarder et quitter
|
|
```
|
|
|
|
## Alternatives à GitDoc
|
|
|
|
Si GitDoc ne convient pas, voici d'autres approches:
|
|
|
|
### 1. Commits manuels réguliers
|
|
```bash
|
|
git add -A
|
|
git commit -m "wip: Travail en cours"
|
|
```
|
|
|
|
### 2. Script de commit automatique
|
|
```bash
|
|
# Créer un script auto-commit.sh
|
|
#!/bin/bash
|
|
while true; do
|
|
git add -A
|
|
git commit -m "auto: $(date +'%Y-%m-%d %H:%M:%S')"
|
|
sleep 300 # 5 minutes
|
|
done
|
|
```
|
|
|
|
### 3. Pre-commit hooks
|
|
Voir: https://pre-commit.com/
|
|
|
|
## Recommandations
|
|
|
|
**À FAIRE:**
|
|
- Activer GitDoc pour le travail collaboratif
|
|
- Squasher les commits GitDoc avant une PR
|
|
- Ajouter manuellement les nouveaux fichiers avec `git add`
|
|
|
|
**À ÉVITER:**
|
|
- Pusher directement les commits GitDoc
|
|
- Compter sur GitDoc pour les nouveaux fichiers
|
|
- Activer `autoPush` (risque de push non désiré)
|
|
|
|
---
|
|
|
|
## Voir aussi
|
|
|
|
- [Guide Git](https://git-scm.com/doc)
|
|
- [Extension GitDoc](https://marketplace.visualstudio.com/items?itemName=vsls-contrib.gitdoc)
|