Installation
Vérifiez que Git est installé sur votre machine :
git --version
Sinon, installez Git selon votre système d’exploitation.
Profitez de -40 % sur tous nos abonnements avec le code EAZY40
Jour(s)
:
Heure(s)
:
Minute(s)
:
Seconde(s)
Ce TP vous montre comment reporter un ou plusieurs commits précis d’une branche vers une autre sans fusionner toute la branche source. Idéal pour hotfix, backport ou récupération d’une correction isolée. Vous apprendrez le cherry-pick simple, multiple, sans commit automatique, la gestion des conflits, l’annotation -x et la manipulation de merge commits.
--continue ou --abort-x et éditer le message si besoin-m et revenir en arrière avec git revertVous travaillez sur feature-x et souhaitez appliquer un correctif sur main sans merger toute la branche. Vous disposez des SHA des commits à reporter et devez conserver un historique propre pour faciliter la Pull Request.
git fetch origin
git checkout main
git pull --ff-only
git log --oneline origin/feature-x -10
git cherry-pick <SHA>
Avec annotation : git cherry-pick -x <SHA>
Éditer le message : git cherry-pick -x --edit <SHA>
Non contigus : git cherry-pick <SHA1> <SHA2>
Plage contiguë : git cherry-pick A^..B
git cherry-pick -n <SHA1> <SHA2>
git commit -m "Backport: corrections X et Y depuis feature-x"
git cherry-pick <SHA>
# résoudre les conflits
git add <fichiers_resolus>
git cherry-pick --continue
# abandonner
git cherry-pick --abort
git cherry-pick -m 1 <SHA_MERGE>
git log --oneline --decorate -5
git push origin main
Avec commit partagé : git revert <SHA>
Local et non partagé : git reset --hard HEAD^
git log --oneline --cherry main...origin/feature-x
Le cherry-pick permet de reporter un commit précis sur la branche courante. Utilisez -x pour tracer l’origine, -n pour grouper plusieurs commits en un seul, et gérez les conflits avec --continue ou --abort. Pour un merge commit, n’appliquez le cherry-pick que si nécessaire. Pour annuler, utilisez git revert ou git reset --hard si non partagé.