Durant ces exercices nous allons utiliser Git en ligne de commande (sans interface graphique) : l’objectif est de pratiquer les différentes commandes de base git
git
est souvent déjà installé sur Linux. Mais si ce n’est pas le cas, il suffit d’installer le paquet git
, par exemple avec apt install git
.
En ligne de commande créez le dossier de code tp1_git
.
Chargez ce dossier avec VSCode.
Sur Linux : Si VSCode n’est pas installé : snap install --classic code
Pour lancer VSCode : code
ou code mondossier/
Créez un nouveau fichier Python dans ce dossier appelé multiplication.py
. Copiez-y le code suivant :
# Définit l'opération de multiplication
def multiplie(a, b):
return a * b
if __name__ == "__main__":
print("6 * 7 = ")
print(multiplie(a, b))
git status
. Quel est le problème ?git init
.git status
pour voir l’état de votre dépôt.Pour le moment Git ne versionne aucun fichier du dépôt comme le confirme la commande git status
.
git add <nom_fichier>
sur le fichier. Puis faites à nouveau git status
. Le fichier est passé à l’état suivi (tracked).git status
à nouveau. Que s’est-il passé ?git status
pour constater que tous les fichiers sont non suivis sauf un.git config --global user.name "<votre nom>"
git config --global user.email "<votre email>"
git commit -m "<message_de_commit>"
(commit signifie s’engager alors réfléchissez avant de lancer cette commande !). Utilisons le message "Ceci est mon premier commit"
pour le premier commit d’un dépôt. Valider la version courante.git status
pour voir l’état du dépôt. Que constate-t-on ?git log
pour observer votre premier commit.Si le dossier __pycache__
n’a pas été créé, créez manuellement juste pour le TP un fichier : touch __pycache__
Utiliser git add
avec l’option -A
pour ajouter tous les fichiers actuels de votre projet.
Qu’affiche git status
?
Lancez à nouveau git commit
avec un message adéquat.
A quoi sert le dossier __pycache__
? Que faire avec ce dossier ?
Oh non ! Vous avez ajouté le dossier __pycache__
dans votre commit précédent 🙃
Ce ne serait pas correct de pousser sur Internet votre code en l’état !
__pycache__
avec la commande git rm
:
git rm --help
pour les trouver.Maintenant que nous avons supprimé ce dossier nous voulons éviter de l’ajouter accidentellement à un commit à l’avenir. Nous allons ignorer ce dossier.
.gitignore
et à la première ligne ajoutez __pycache__
ignore __pycache__
”multiplication.py
à nouveau.status
. Que constate-t-on ?Le problème avec la suppression de __pycache__
de la partie précédente est qu’elle n’affecte que le dernier commit. Le dossier inutile __pycache__
encombre encore l’historique de notre dépôt.
Pour le constater, installez l’extension Git Graph
de VSCode.
Explorer la fenêtre git graph en cliquant sur Git Graph
en haut à gauche de la fenêtre des fichiers.
Regardez successivement le contenu des deux commits.
Pour corriger l’historique du dépôt nous aimerions revenir en arrière.
Utilisez git reset
avec HEAD~2
pour revenir deux commits en arrière (nous parlerons de HEAD
plus tard).
Faites git status
. Normalement vous devriez avoir un seul fichier non suivi .gitignore
. Git vient de réinitialiser les ajouts des deux commits précédents.
Constatez dans Git Graph que seul reste le premier commit qui est toujours là.
Ajouter et committez tous les fichiers non suivis du dépôt.
Vérifier que __pycache__
n’apparaît pas dans l’historique.