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 via composer 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

Catégorisé: