Systèmes de gestion de versions : Git
TP #5 : Autres commandes utiles
Étiqueter un commit
- Étiqueter un commit :
$ git tag v2.5 1b2e1d63ff
- Quelques exemples :
$ git diff v2.5 HEAD $ git log v2.5..v2.6 $ git log v2.5.. $ git log v2.5.. Makefile $ git branch stable v2.5 $ git show v2.5:Makefile
Recherches
- Rechercher un motif :
$ git grep "hello" $ git grep "hello" v2.5
- Voir qui a modifié les lignes d'un fichier :
$ git blame <fichier>
- Retrouver le commit à l'origine d'un problème (bug) : git bisect
$ git bisect start # démarrer une nouvelle recherche $ git bisect bad # la version courante n'est pas bonne $ git bisect good v2.6.13-rc2 # la version v2.6.13-rc2 était bonne # une version intermédiaire est extraite, il faut la tester $ git bisect good # si la version est bonne $ git bisect bad # si la version n'est pas bonne $ git bisect skip # pour tester une autre version # recommencer jusqu'à trouver le commit fautif $ git bisect reset # pour réinitialiser le dépôt à la fin
Annuler un commit
Pour annuler un commit problématique, on pourra utiliser :
$ git revert <commit>
NB: le commit fautif n'est pas supprimé, mais un nouveau commit est créé avec les modifications inverses.
Appliquer un commit
Pour appliquer un commit issu d'une autre branche par exemple, on peut utiliser :
$ git cherry-pick <commit>