5.8 KiB
Gestion des versions du projet avec GIT
Source : Confluence EasyWMS France
Dernière mise à jour : 22/08/2025 (v27)
La gestion est expliquée en parallèle via l'invite de commande et le logiciel SourceTree (configuré en anglais).
Ressources utiles :
1 - Initialiser le projet en local
Clone
Git (CLI) :
cd <emplacement souhaité>
git clone <url>
SourceTree : Utiliser le bouton "Clone" et renseigner l'URL du repo.
L'URL du repo GIT se trouve dans l'interface de gestion du projet (bouton "Clone" ou "Code" selon la plateforme).
Initialiser Git Flow
Git Flow est une extension de Git qui impose un workflow structuré et uniformise la gestion des branches.
Git (CLI) :
git flow init -d \
--feature feature/ \
--bugfix bugfix/ \
--release release/ \
--hotfix hotfix/ \
--support support/ \
-t ''
git push --set-upstream origin develop
SourceTree : Cliquer sur l'icône Git Flow → ne rien modifier dans la fenêtre de configuration → cliquer sur OK.
2 - Création d'une nouvelle feature/branche
Vérifier d'abord qu'il n'y a pas de commit à récupérer :
Git (CLI) :
git pull
SourceTree : Cliquer sur le bouton "Pull".
Créer la nouvelle feature pour la tâche :
Git (CLI) :
git flow feature start <nom de la feature>
# Ex : git flow feature start PD-49
SourceTree : Cliquer sur l'icône Git Flow → "Start New Feature" → saisir le nom.
Déployer la VM depuis la nouvelle branche en repartant du point de contrôle "DEPLOY 0" :
Si une pop-up de connexion apparaît sur SmartUI : procédure dédiée
Vous êtes prêt à commencer vos développements. ✅
3 - Commit de vos modifications
Avant de committer, exporter toutes les modifications réalisées :
- Exporter l'application custom depuis votre branche de développement → Gestion de la custom application — Export
- Si des paramètres/configurations WMS ont été modifiés : faire un export des datas → Export des données via uGNA
- Si des fichiers BOO du GNA ont été modifiés : exécuter la sauvegarde → Sauvegarder la configuration sur le GIT
Git (CLI) :
# Ajouter tous les fichiers modifiés
git add .
# Ou un fichier spécifique
git add <Nom du fichier>
# Committer avec un message explicite
git commit -m "<Message expliquant vos modifications>"
# Pousser sur la remote
git push
SourceTree :
- Cliquer sur "Commit" (haut à gauche)
- Ajouter tous les fichiers via "Stage all", ou fichier par fichier via drag & drop ou sélection + "Stage selected"
- Écrire le message de commit
- Cliquer sur "Commit"
- Pour push simultané : cocher l'option "Push changes immediately"
ℹ️ Les fichiers générés par l'export de l'application custom sont séparés en plusieurs fichiers pour un même élément (workflow, source C#, DESIGN…). Bien prendre tous les fichiers portant le nom de l'élément modifié.
⚠️ Règle absolue : commit et push ses développements tous les soirs avant de quitter les bureaux afin d'éviter toute perte de données (perte/vol/casse du PC).
4 - Fin de la tâche de développement
Une fois les développements testés et validés, "clôturer" la branche de développement.
Mettre à niveau la branche "develop"
Git (CLI) :
git switch develop
git pull
SourceTree : Double-cliquer sur la branche develop pour la sélectionner, puis cliquer sur "Pull".
Clôturer la feature
Git (CLI) :
git flow feature finish -r <Nom feature>
git push
# Ex : git flow feature finish -r PD-49
SourceTree :
- Cliquer sur l'icône Git Flow → sélectionner la feature à clôturer
- ✅ Bien cocher "Rebase on development Branch"
- Valider, puis cliquer sur "Push"
Gérer les conflits
Si des conflits apparaissent lors du rebase :
- Ouvrir le ou les fichiers en conflit avec votre éditeur préféré (Visual Studio Code recommandé) et résoudre les conflits
Git (CLI) :
git add <nom du fichier en conflit>
git rebase --continue
# Répéter pour tous les commits jusqu'à la fin du rebase
# Puis recommencer la clôture de la feature
SourceTree :
- Ne pas faire de commit — seulement "stage" les fichiers résolus
- Cliquer sur "Continue Rebase"
- Répéter pour tous les commits de la branche
develop - Recommencer la clôture de la feature sans cocher "Rebase" cette fois
Mettre à jour l'état de la tâche Jira
Passer le ticket à "Revue de code".
Plus de détails sur les commandes Git : Formation Git — Invite de commandes