Dans ce article, nous verrons comment utiliser Git en ligne de commande. Voici les 4 sujets traités :
- Utiliser Git en ligne de commande, un scénario complet
- Travailler avec Git en mode local
- Travailler avec Git en mode distant
- Gérer des branches par récit utilisateur ou ( feature branch workflow )
Utiliser Git en ligne de commande, un scénario complet
L’objectif est de Cloner un projet sur GitHub, ajouter un fichier et le publier.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// Clone un projet de github vers votre machine $ git clone https://github.com/PS-A14/git-test.git // Écrit une chaîne dans un fichier $ echo « bonjour » > demo1.txt // Affiche l'état de votre repo $ git status // Ajout le fichier nouvellement créé $ git add demo1.txt // Affiche l'état de votre repo $ git status // Crée un commit afin de le publier $ git commit -m "demo1.txt" // Pousse le commit $ git push // Affiche le statut de votre repo $ git status // Affiche l'historique du repo $ git log |
Travailler avec Git en mode local
Cette section présente comment utiliser Git en mode local (déconnecté). Lorsque vous travaillez individuellement, ce peut-être utile. Par contre, il est parfois avantageux de pouvoir synchroniser le code sur GitHub ou GitLab afin de créer une sauvegarde de votre travail ou d’y accéder à partir d’un deuxième ordinateur. Les commandes suivante seront aussi utiles dans la prochaine section, où les commandes distantes sont présentées.
Affiche vos configurations
1 |
$ git config --list |
Définit votre identité
1 2 |
$ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com |
Initialise un dépôt Git local
1 |
$ git init |
Ajoute tous les fichiers au dépôt
1 |
$ git add . |
Ajoute un fichier au dépôt
1 |
$ git add nomDuFichier |
Ajoute les changements au dépôt
1 |
$ git commit –m 'version initiale du projet' |
Vérifie l’état des fichiers
1 |
$ git status |
Affiche le log des commit
1 |
$ git log |
Valide vos modifications
1 |
$ git commit –m "votre commentaire" |
Efface des fichiers du dépôt
1 2 3 4 5 |
$ git rm nomFichier $ git add -u $ git commit -m "Fichier supprimé" |
Efface un dossier du dépôt
1 2 3 4 |
$ git rm nomDossier –r $ git add -u $ git commit -m "Dossier supprimé" $ git push // si vous voulez appliquer le changement sur le serveur |
Crée un Tag
1 2 3 |
$ git tag -a v1.4 -m 'ma version 1.4' $ git tag $ git show v1.4 |
Crée une nouvelle branche
1 |
$ git branch nom-branche |
Affiche la branche actuelle
1 |
$ git branch |
Change de branche
1 |
$ git checkout nom-branche |
Fusionne (merge) 2 branches
1 |
$ git merge autre-branche |
Travailler avec Git en mode distant
Clone un dépôt distant (SSH ou HTTPS)
1 2 |
$ git clone git@github.com:PS-A14/Contacts.git $ git clone https://github.com/PS-A14/Contacts.git |
Récupère des changements distants
1 |
$ git pull |
Pousse les changements vers le repo distant sur la branche master
1 |
$ git push origin master |
Gérer des branches par récit utilisateur ou ( feature branch workflow )
L’idée centrale derrière le feature branch workflow, c’est que le développement d’une fonctionnalité doit se faire dans une branche dédiée plutôt que dans la branche master. Cette encapsulation facilite le travail de plusieurs développeurs sur un même projet, sans perturbation pour la base de code principale. De plus, la branche master ne contiendra jamais de code défectueux, ce qui est un énorme avantage pour les environnements d’intégration continue.
L’encapsulation du développement de fonctionnalités permet aussi de tirer parti des pull requests, qui permettent de lancer des discussions sur le code d’une branche. Les pull requests permettent aux développeurs de valider une fonctionnalité avant que celle-ci ne soit intégrée dans le projet officiel.
1 2 3 4 5 6 7 8 9 10 |
$ git checkout -b branche-nouvelle-fonctionnalité master $ git status $ git add <fichier-lambda> $ git commit $ git push -u origin branche-nouvelle-fonctionnalité $ git push $ git checkout master $ git pull $ git pull origin branche-nouvelle-fonctionnalité (git merge) $ git push |
Workflow feature branch sur le site Atlassian
Le Git challenge
Le git challenge vous permet de vous familiariser avec la ligne de commande Git sans avoir à l’installer. Un exercice intéressant pour les débutants :
Conclusion
Git est un outil essentiel tous les développeurs logiciel. Il permet de faire une gestion saine du code source et de travailler efficacement à plusieurs.
Références
- http://git-scm.com/book/fr/
- http://gitref.org/remotes/
- https://windows.github.com/
Laisser un commentaire
Participez-vous à la discussion?N'hésitez pas à contribuer!