Étant novice, je me connectais à La Forge (Gitlab de l'Éducation Nationale) pour pousser mes fichiers de code. Voilà mes notes pour le faire directement dans un terminal de mon ordinateur. je suis sous LinuxMint 22.3, mais cela fonctionne dans tous les terminal.
1. Installation des logiciels
Mettre à jour les paquets
Installer Git
Installer Node.js et npm
2. Configuration de Git
Pour vérifier que la config est bien en place
Ces 3 commandes sont à faire une seule fois pour toujours. Pas besoin de les refaire.
Pour annuler ces 3 lignes de commande:
3. Créer un token sur La Forge
Ouvrir le navigateur et se connecter à La Forge. Se rendre dans les Préférences personnelles - Accès - Jetons d'accès personnel Cliquer sur Ajouter un jeton (en haut à droite).
Créer le jeton, et cliquez sur Write_repository uniquement et créer le jeton.
Une fois créé, GitLab t'affiche le token une seule et unique fois, généralement dans un encadré bleu ou vert en haut de la page. Il ressemble à :
(environ 20 caractères après glpat-)
TRÈS IMPORTANT : si tu fermes cet onglet ou tu rafraîchis la page, le token disparaît et ne s'affichera plus jamais. Si ça arrive, pas de drame, tu peux toujours en recréer un autre — mais autant éviter.
4. Cloner ton projet depuis la Forge sur ton ordi
Pourquoi "cloner" ? Le projet de code existe actuellement sur la Forge (un serveur distant). Pour pouvoir le modifier depuis ton ordi, on aller en télécharger une copie locale, qui restera connectée au projet d'origine. Toutes les modifications que tu feras sur ton ordi pourront ensuite être renvoyées vers la Forge avec une simple commande.
Ouvrir le terminal dans le dossier où l'on veut cloner le projet.
Cloner le projet (ajouter le .git à la fin de l'adresse)
Comme mes projets sont publics, je n'ai pas besoin d'identifiant pour les cloner. Sinon on demande l'identifiant et le token.
5. Quatre commande à connaitre pour Git
Les étapes pour pousser les fichiers sur La Forge
git status — Voir où on en est
À utiliser tout le temps. Affiche les fichiers modifiés/ajoutés/supprimés et dans quelle zone ils se trouvent.
Couleurs typiques :
Rouge : fichiers modifiés mais pas encore dans la staging area Vert : fichiers dans la staging area, prêts pour le commit Mention spéciale : "Fichiers non suivis" = nouveaux fichiers que Git ne connaît pas encore
git add — Mettre des fichiers dans la staging area
courant et ses sous-dossiers ⚠️ Commande silencieuse : pas de retour = succès.
git commit — Créer un instantané dans l'historique local
Le message doit être clair et descriptif (il sera visible dans l'historique du projet sur la Forge). Conseils :
Commence par un verbe : "Ajout du module X", "Correction du bug Y" Évite "diverses modifications", "petit changement" qui ne disent rien Indique le numéro de version si pertinent : "v0.2.0 : intégration Piper TTS" Cette commande parle : elle affiche le hash du commit, le nombre de fichiers changés, etc.
git push — Envoyer l'historique local vers la Forge
git push
⚠️ C'est seulement ici que ton code arrive sur la Forge. Avant git push, tout ce que tu fais est local.
⚠️ C'est aussi ici que Git te demande tes identifiants (login + token) la première fois. Ensuite, grâce à credential.helper store, c'est mémorisé.
Les différentes étapes à retenir
Quand les fichiers sont modifiés et qu'on veut les envoyer sur La Forge :
Cas particuliers utiles
Annuler un git add (avant commit)
Les modifications restent dans le working directory, on annule juste leur mise dans le sas.
Annuler une modif sur un fichier (avant add)
⚠️ Attention : ça efface les modifications, c'est irréversible.
Annuler le dernier commit (avant push)
Le commit est défait, mais les fichiers et la staging area sont préservés. On peut corriger et recommitter.
Voir l'historique des commits
Récupérer les modifs depuis la Forge
À faire avant de commencer à coder, si tu travailles depuis plusieurs ordis ou en équipe :
Sinon : conflit assuré au moment du push.
Piège classique : le mauvais git status
git status sans option ne montre pas les fichiers ignorés par .gitignore. Si tu te demandes "pourquoi Git ne voit pas mon nouveau fichier ?", vérifie qu'il n'est pas dans .gitignore :
Emmanuel H.