Comment l’IA, Raycast, Ollama et Git améliorer mes messages de commit et Pull Request
Auteur(s) de l'article
Dans cet article, je vais vous expliquer comment j'ai optimisé mon workflow Git en utilisant l'IA pour générer des messages de Commit et des descriptions de Pull Request plus efficaces.
Ma motivation était simple : créer un processus fluide qui exploite l'IA avec un contexte approprié sur mon travail — en comprenant la tâche, les tickets Jira et les modifications de fichiers.
Tout au long de cet article, je vais présenter l'utilisation d'Ollama avec Gemma 3, qui offre d'excellents résultats tout en étant éco-énergétique.
“ 🚨 Avertissement environnemental : Les modèles d'IA peuvent avoir une empreinte environnementale significative. Pour réduire la consommation d'énergie, je recommande fortement d'utiliser des modèles locaux pour ce type de tâches routinières plutôt que des solutions cloud. ”
Pourquoi ce workflow est important
Écrire des messages de commit et des descriptions de pull request clairs et informatifs est crucial pour la maintenabilité d'un projet, mais c'est souvent bâclé.

En automatisant le processus de génération tout en maintenant une supervision humaine, nous pouvons atteindre :
- Cohérence : Chaque commit suit des standards similaires de formatage et d'information
- Préservation du contexte : Les détails importants sur les changements ne sont pas perdus
- Efficacité temporelle : Moins de charge mentale lors du passage entre le codage et la documentation
- Meilleure collaboration : Les membres de l'équipe peuvent rapidement comprendre ce qui a changé et pourquoi
L'IA excelle dans la synthèse d'informations techniques quand on lui donne un contexte approprié, mais le jugement humain reste essentiel pour l'exactitude et la pertinence.
Ollama
Ollama fournit un excellent moyen d'exécuter des modèles de langage localement, vous donnant la puissance de l'IA sans les préoccupations de confidentialité ou l'impact environnemental des services cloud. Il supporte divers modèles et rend l'IA locale incroyablement accessible.
“ Je crois que l'IA est certainement l'avenir du développement et de l'automatisation, mais nous devons l'utiliser de manière responsable. Les modèles locaux comme ceux disponibles via Ollama représentent une approche plus durable pour les tâches d'IA quotidiennes. ”
Installation
Voici une vidéo complète qui couvre tout ce dont vous avez besoin pour commencer :
Après l'installation, vous pouvez rapidement vérifier que tout fonctionne en exécutant :
ollama run gemma3:4b
Pour notre workflow Git, je recommande de commencer avec
gemma3:4b
ou gemma3:12b
selon les capacités de votre système. Ces modèles offrent une excellente compréhension du code tout en maintenant des exigences de ressources raisonnables.Raycast
La fonctionnalité Raycast AI Commands transforme notre façon d'interagir avec les modèles d'IA en permettant des instructions personnalisées avec des placeholders dynamiques. Cela la rend parfaite pour créer des workflows Git réutilisables et contextuels.
Générateur de Commit message

Cette commande analyse les changements en staging et génère des messages de commit appropriés suivant les standards de commit conventionnels.
Le template de prompt pour Raycast :
You are a Git commit message generator. Based on the provided git diff and branch name, write a clear, concise commit message following these guidelines:
1. Write in imperative mood (e.g., "Add", "Fix", "Update", not "Added", "Fixed", "Updated")
2. Keep the first line under 50 characters
3. Start with lowercase letter
4. Don't end with a period
5. If the branch name follows the pattern "feature/JIRA-123" or similar, extract the Jira ticket and add it at the end with a dash: " - PROJ-456"
6. Focus on what the change does, not how it does it
7. Use single quotes instead of double quotes if quotes are needed
Examples (note the Jira ticket is at the END with a DASH, not in brackets):
- add user authentication logic - PROJ-456
- fix null pointer exception in payment service - BUG-789
- update documentation for API endpoints
- remove deprecated helper functions - TASK-123
- refactor database connection handling - DEV-890
- implement password reset functionality - AUTH-234
- delete unused CSS classes - UI-567
- optimize image loading performance - PERF-123
- create new user registration form - USER-445
- modify email validation rules - VALID-678
- integrate third party payment gateway - PAY-901
- disable legacy authentication method - SEC-432
Git diff: {clipboard}
Branch name: {argument name="branch"}
Steps:
1. Analyze the git diff to understand the changes
2. Use the branch name to extract any Jira ticket
3. Generate commit message
At the end, provide 3 commit message variants in this exact format for easy copy-paste:
OPTION 1:
[commit message here]
OPTION 2:
[commit message here]
OPTION 3:
[commit message here]
Fonctionnalités clés :
- Utilise
{clipboard}
pour analyser le git diff - Accepte
{argument name="branch"}
pour extraire les tickets Jira - Fournit plusieurs options de messages de commit
- Suit les conventions de l'impératif
Générateur de Pull Request

Cette commande crée des descriptions de PR complètes qui aident les reviewers à comprendre le contexte et la portée des changements.
Le template de prompt :
You are a technical writer creating a pull request description. Analyze the provided git diff/log and create a clear, concise PR description that helps reviewers understand the changes and their impact.
Guidelines:
- Focus on WHAT changed and WHY it improves the project
- Use present tense and active voice
- Don't use double quotes in the output
- Be specific about the impact and benefits
- Extract Jira tickets from commit messages (format: PROJ-123, BUG-456, etc.)
- Prioritize the most important changes first
Write your output in a code block using this template:
```
### 💬 Description
[One-sentence summary of what this PR accomplishes]
[Bullet list of key changes - focus on user/developer impact, not implementation details]
### 🎟️ Issue(s)
[Only include if Jira tickets found in commits - list as "- PROJ-123"]
### 🔢 To Review
[Bullet list focusing on areas that need careful attention - security, performance, breaking changes, new APIs, etc.]
```
Examples of good vs bad descriptions:
GOOD:
- "Improves user login performance by 40%"
- "Adds email validation to prevent invalid registrations"
- "Fixes memory leak in image processing pipeline"
BAD:
- "Updates UserController.php"
- "Changes some methods"
- "Refactors code"
Git diff/log data: {argument name="diff"}
Remember: Focus on the business value and impact, not just the technical changes.
Fonctionnalités clés :
- Analyse le diff entre la branche courante et dev
- Génère des descriptions de PR structurées
- Extrait automatiquement les tickets Jira des messages de commit
Connecting the Pieces
La magie opère quand nous connectons nos commandes IA à notre workflow Git via de simples fonctions bash. Ces scripts collectent automatiquement le contexte nécessaire et déclenchent les commandes Raycast appropriées.
“ Ajoute ces fonctions à ton fichier de configuration shell (.bashrc, .zshrc, etc.) ”
Script de Commit message

unalias aimsg 1>/dev/null 2>&1
aimsg() {
# Copy the staged diff to clipboard for AI analysis
git --no-pager diff --cached | pbcopy
# Get the current branch name
branch=$(git symbolic-ref --short HEAD)
# Open Raycast AI command with branch context
open -g "raycast://ai-commands/commit-message?arguments={\"branch\":\"$branch\"}"
}
Comment ça fonctionne :
- Capture les changements en staging (
git diff --cached
) - Copie le diff vers le clipboard pour l'analyse IA (
| pbcopy
) - Extrait le nom de la branche courante pour la détection de tickets (
git symbolic-ref --short HEAD
) - Lance Raycast avec la commande IA de message de commit
Script de Pull Request

unalias aipr 1>/dev/null 2>&1
aipr() {
# Get the diff between current branch and main/dev
diff=$(git log --oneline dev.."$(git symbolic-ref --short HEAD)")
# Launch Raycast AI command with diff data
open -g "raycast://ai-commands/pull-request-pr-description?arguments={\"diff\":\"$diff\"}"
}
Comment ça fonctionne :
- Génère un log des commits entre la branche courante et dev
- Passe ce diff directement au générateur de description PR
- Lance Raycast avec la commande IA de description PR
Conclusion
Ce workflow Git amélioré par l'IA a fondamentalement transformé ma façon d'aborder les messages
git
. Cependant, il est crucial de comprendre que l'IA est un compagnon, pas un remplacement du jugement humain.L'aspect le plus précieux de ce workflow n'est pas seulement le gain de temps — c'est comment l'IA aide à améliorer la qualité et la cohérence de ma communication technique. Pour les non-natifs anglophones comme moi, l'IA sert d'excellent compagnon d'écriture qui aide à exprimer plus clairement les concepts techniques.
Alors que nous intégrons l'IA plus profondément dans nos workflows de développement, nous devons utiliser ces outils de manière responsable :
- Toujours réviser la sortie IA avant de commiter ou soumettre
- Comprendre les changements que vous documentez
- Choisir des options durables comme les modèles locaux quand c'est possible
- Maintenir une supervision humaine pour tout contenu généré par IA
❤️ Coeur sur vos claviers.

Sources
Léo Duff (2025) Comment ChatGPT assoiffe cette population
Comment ChatGPT assoiffe cette population.
https://www.youtube.com/watch?v=LNoklk0NRmQ&t=1s
Comment ChatGPT assoiffe cette population.
https://www.youtube.com/watch?v=LNoklk0NRmQ&t=1s
Raycast (2025) Local Models in Raycast AI (in under 2min)
https://www.youtube.com/watch?v=FjkAuklziGk
https://www.youtube.com/watch?v=FjkAuklziGk
Riderman de Sousa Barbosa (2025) How I use AI, Raycast, and Lazygit to help me write better commit messages.
https://www.showwcase.com/article/83307/how-i-use-ai-raycast-and-lazygit-to-help-me-write-better-commit-messages
https://www.showwcase.com/article/83307/how-i-use-ai-raycast-and-lazygit-to-help-me-write-better-commit-messages
Devin Soni (2020) Stop Writing Bad Commit Messages.
https://medium.com/better-programming/stop-writing-bad-commit-messages-8df79517177d
https://medium.com/better-programming/stop-writing-bad-commit-messages-8df79517177d
Hritik Jaiswal (2021) Understand how to write a good commit message through memes.
https://medium.com/@hritik.jaiswal/how-to-write-a-good-commit-message-9d2d533b9052
https://medium.com/@hritik.jaiswal/how-to-write-a-good-commit-message-9d2d533b9052
Resources
Claude AI https://claude.ai
Assisted with writing and refining my English.
Assisted with writing and refining my English.
xkcd https://xkcd.com
Added comedic context to the subject matter.
Added comedic context to the subject matter.
Workchronicles https://workchronicles.com
Added a touch of humor to this article.
Added a touch of humor to this article.
All images copyright of their respective owners.