Introduction
Développer un projet web avec CodeIgniter 4, c’est profiter d’un framework PHP moderne, léger et bien structuré. Mais pour collaborer efficacement, gérer les versions de son code et éviter les catastrophes, l’utilisation de Git est incontournable.
Dans cet article, je vous montre comment combiner Git et CodeIgniter 4 pour un workflow organisé, sécurisé et adapté aux projets d’équipe. Que vous soyez débutant ou développeur confirmé, vous découvrirez des bonnes pratiques et des astuces concrètes pour maîtriser cet outil.
1. Configuration initiale de Git avec CodeIgniter 4
a. Initialiser un dépôt Git
Commencez par créer un dépôt Git à la racine de votre projet :
cd mon-projet-ci4
git init
b. Le fichier .gitignore : votre allié sécurité
CodeIgniter 4 génère des fichiers temporaires, des logs ou des configurations sensibles qu’il ne faut jamais versionner. Créez un fichier .gitignore
avec ce contenu :
/writable/*
/vendor/
.env
node_modules/
composer.lock
.DS_Store
*.sqlite
Explications :
writable/
: Contient les logs et caches (gérés localement)..env
: Stocke les variables sensibles (clés API, accès BDD).vendor/
: Géré par Composer (à reconstruire viacomposer install
).
c. Structurer son projet comme un pro
Respectez l’arborescence officielle de CodeIgniter 4 :
app/
: Contrôleurs, modèles, configurations.public/
: Fichiers publics (CSS, JS, images).writable/
: Exclu de Git (voir.gitignore
).
Astuce : Utilisez le fichier .env
pour externaliser les configurations sensibles et versionnez uniquement app/Config/App.php
(sans les clés !).
2. Workflow Git : Branches, commits et collaboration
a. Les branches indispensables
main
: Branche stable, prête pour la production.develop
: Intégration des nouvelles fonctionnalités.feature/*
: Une branche par fonctionnalité (ex:feature/authentification
).hotfix/*
: Correctifs urgents appliqués àmain
.
b. Exemple pas à pas
Créez une branche pour une fonctionnalité :
git checkout -b feature/ajout-contact
Développez (ex: formulaire de contact).
Validez vos changements avec un message clair :
git add app/Controllers/Contact.php
git commit -m "Ajout du formulaire de contact + validation"
Fusionnez dans develop
après revue de code :
git checkout develop
git merge feature/ajout-contact
c. Éviter les conflits dans Routes.php
Le fichier app/Config/Routes.php
est souvent modifié. Pour minimiser les conflits :
- Communiquez avec l’équipe sur les changements de routes.
- Utilisez des groupes de routes pour modulariser.
3. Commandes Git essentielles
a. Cloner et récupérer les mises à jour
git clone https://github.com/votre-user/mon-projet-ci4.git
git pull origin develop # Après un changement d’équipe
b. Gérer les dépendances et migrations
Après un git pull
, mettez à jour les librairies :
composer install