🔧 Alimenter le journal depuis Git
:::note Pour les développeurs Cette section s'adresse aux développeurs qui utilisent Git. Si tu ne sais pas ce que c'est, tu peux passer directement à la section Journal de bord. :::
Chaque fois que tu enregistres une étape de travail dans Git (un "commit"), DockSky peut créer automatiquement une entrée dans ton journal. Tu construis une trace de tes décisions techniques sans rien faire manuellement, juste en travaillant normalement.
:::tip Pourquoi c'est utile pour un cerveau TDA Le TDA vit dans l'instant. Dans trois semaines, tu ne te souviendras plus pourquoi tu as fait tel changement. Le journal automatique construit une trace sans effort. :::
Fonctionnement
Quand tu envoies la requête, une entrée est créée dans ton journal avec :
- Source :
git-commit(distingué des entrées manuelles ou IA) - Tags :
["git", "commit"]automatiquement - Format :
🔧 [repo@abc12345] Message du commit (dd/mm/yyyy HH:MM)
Exemple d'entrée générée :
🔧 [docksky-api@c330602] Fix: enum journal_source manquait git-commit (23/05/2026 05:42)
Endpoint
POST https://api.docksky.fr/tda/journal/git-commit
Authorization: Bearer <token>
Content-Type: application/json
Corps de la requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
project_id | integer | oui | ID du projet TDA |
message | string | oui | Texte explicatif (max 500 caractères) |
commit_ref | string | oui | Hash du commit (max 64 caractères) |
commit_date | datetime | oui | Date ISO 8601 du commit |
repo | string | non | Nom du dépôt (max 100 caractères) |
Réponse (201 Created)
{
"id": 172,
"content": "🔧 [docksky-api@c330602] Fix: enum journal_source (23/05/2026 05:42)",
"source": "git-commit",
"tags": ["git", "commit"],
"project_id": 79,
"created_at": "2026-05-23T05:42:00"
}
Hook git post-commit
Crée le fichier .git/hooks/post-commit dans ton dépôt et rends-le exécutable :
chmod +x .git/hooks/post-commit
Contenu du hook :
#!/usr/bin/env bash
set -euo pipefail
TDA_USERNAME="ton-username"
TDA_PASSWORD="ton-mot-de-passe"
TDA_PROJECT_ID=79
TDA_API="https://api.docksky.fr"
# Récupérer le token
TOKEN=$(curl -s -X POST "$TDA_API/auth/login" \
-d "username=$TDA_USERNAME" \
-d "password=$TDA_PASSWORD" \
| grep -o '"access_token":"[^"]*"' | cut -d'"' -f4)
[ -z "$TOKEN" ] && exit 0 # Silencieux si pas de réseau
REPO=$(basename "$(git rev-parse --show-toplevel)")
REF=$(git rev-parse HEAD)
MSG=$(git log -1 --pretty=%s)
DATE=$(git log -1 --pretty=%cI)
curl -s -X POST "$TDA_API/tda/journal/git-commit" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d "{\"project_id\":$TDA_PROJECT_ID,\"message\":\"$MSG\",\"commit_ref\":\"$REF\",\"commit_date\":\"$DATE\",\"repo\":\"$REPO\"}" \
> /dev/null
exit 0
:::note Le hook ne bloque jamais
Le script se termine toujours avec exit 0. Si le réseau est absent ou l'API indisponible, le commit se fait normalement.
:::
Obtenir un token
curl -X POST https://api.docksky.fr/auth/login \
-d "username=ton-username" \
-d "password=ton-mot-de-passe"
Pour une utilisation en CI/CD ou dans un script automatisé, il est préférable de stocker les credentials dans des variables d'environnement ou un gestionnaire de secrets.
Installer les hooks sur une nouvelle machine
Les hooks git sont locaux (dans .git/hooks/) et ne se poussent pas sur GitHub. Sur un nouveau poste ou après un git clone, il faut les réinstaller.
Options courantes :
- Recopier le hook : crée
.git/hooks/post-commit(contenu ci-dessus) etchmod +x .git/hooks/post-commit - Script perso : un petit script qui boucle sur tes repos et y pose le même hook (chemins et credentials à toi)
core.hooksPath: un dossier de hooks partagé pour plusieurs dépôts (git config core.hooksPath ~/mes-hooks)
Exemple minimal pour installer le hook dans tous les repos d’un dossier :
#!/usr/bin/env bash
# install-hooks.sh — à adapter (chemins, credentials)
HOOK_SRC="$HOME/mes-hooks/post-commit"
for repo in "$HOME/projets"/*/.git; do
cp "$HOOK_SRC" "$(dirname "$repo")/hooks/post-commit"
chmod +x "$(dirname "$repo")/hooks/post-commit"
done
Stocke les credentials dans des variables d'environnement ou un fichier hors dépôt (permissions 600). Ne les écris jamais dans un hook versionné.
Voir les entrées dans l'application
Les entrées apparaissent dans la vue Journal de DockSky, identifiables par leur emoji 🔧 et leur format [repo@ref]. Elles sont filtrables par projet.