Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Git (avancé)

Le temps linéaire c’est bien. Mais parfois, on a besoin d’avoir plusieurs versions du logiciel (une stable, une en cours de développement, une où on essaie une idée, une où on est en train d’implémenter une nouvelle fonctionnalité, etc.). C’est pour le temps est arborescent dans git.

Obtenir des informations sur le dépôt

Pour obtenir des informations sur l’état du dépôt :

  git status

Lister les branches

git branch

Branches

Pour créer une nouvelle branche :

git branch [nom-nouvelle-branche]

Pour supprimer une branche :

git branch -d [branche-à-supprimer]

Pour basculer vers une branche :

git checkout [nom-de-branche]

Combiner des branches

Pour fusionner la branche courante avec une autre branche :

git merge [autre-branche]

Pour déplacer les commits de la branche courante après une certaine branche :

git rebase [nom-branche-après-laquelle]

Idée générale

TODO: faire une image plus simple pour commencer

Annulation de modifications

Pour annuler des commits et aller quelque part :

git reset [where]

Exemple :

  • annuler le dernier commit :

    git reset HEAD^
    
  • annuler les deux derniers commit :

    git reset HEAD^^
    

Commandes avancées

Pour faire çaIl faut taper ça
Modifier l’URL du serveur d’un dépôt localgit remote rm origin puis git remote add origin <url to NEW repo>, puis git push origin --all
Pour connaître l’URL du dépôt distant (serveur)git remote -v
Pour arrêter que git demande un mot de passegit config --global credential.helper store