• 12 heures
  • Facile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 26/08/2019

Utilisez les commandes de base de Git !

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Accédez à un dépôt distant OC

Maintenant que vous êtes un pro du dépôt local et de GitHub, :-° nous allons voir comment accéder à un dépôt distant et le cloner en local. Il va falloir tout d’abord récupérer l’URL du dépôt distant, et là cela se passe sur GitHub ! :)

Allez dans GitHub et accédez au dépôt distant de notre projet open source ici.

Accéder à un dépôt OpenSource
Accéder à un dépôt open source

Cliquez sur le bouton Clone or download.

Cloner le dépôt
Clonez le dépôt

Et tadam, vous avez la fameuse URL dont nous allons avoir besoin. Copiez-la dans le presse-papier.

Retournez sur Git Bash, et tapez la commande suivante :

git remote add OC https://github.com/OpenClassrooms-Student-Center/ProjetOpenSource.git

Cette ligne ne permet pas de cloner le dépôt, mais permet de dire au dépôt que l’on pointe vers le dépôt distant.

Clonez le dépôt en local

Maintenant que notre dépôt local pointe sur le dépôt distant, nous allons cloner son contenu et le dupliquer en local. Afin de réaliser le clonage, nous allons utiliser la commande :

git clone https://github.com/OpenClassrooms-Student-Center/ProjetOpenSource.git

Cela devrait afficher ces petites lignes de commandes !

Résultat de la commande de clonage
Résultat de la commande de clonage

C’est bon signe, la magie du clonage a fonctionné ! :magicien:

Vous devriez maintenant avoir un nouveau répertoire (ayant le nom du projet) et dans ce dossier, tous vos fichiers. Le clonage s’effectue très rapidement, puisque les fichiers vont être compressés avant le transfert. On va donc les recevoir à la vitesse de l’éclair ! Enfin... rapidement, quoi. :)

Vous pouvez maintenant vous mettre à vos développements, et cela sans faire de bêtises ! :p

Appréhendez le système de branches

Le principal atout de Git est son système de branches (pas d’arbre, bien entendu). :D C’est sur ces branches que repose toute la magie de GIT !

Sous Git, la branche principale est appelée la branche master. C’est celle-ci, où au final, vous aurez à la fin toutes vos modifications. Le but est de ne surtout pas réaliser les modifications directement sur cette branche, mais de réaliser les modifications sur d’autres branches, et après tests, les intégrer sur la branche master. Vous avez l’impression que c’est du charabia ? Je vous comprends tout à fait ! :lol:

Nous allons prendre un cas un peu plus concret. Imaginons que vous ayez réalisé une superbe application bancaire pour M. Robert, et que M. Robert ait une superbe idée de cagnotte à ajouter à son application. Panique à bord dans votre tête ! Votre application fonctionne parfaitement, elle est en production, et y toucher serait prendre le risque de faire tout planter. Avec Git et ses fameuses branches, pas de soucis. Vous allez pouvoir créer une branche correspondant à l’évolution cagnotte et cela, sans toucher à votre application en production qui fonctionne parfaitement. Une fois que toutes vos modifications auront été testées, vous pourrez les envoyer en production sans crainte (et dans le pire des cas, revenir en arrière simplement) !

Branche principale et évolution Cagnotte
Branche principale et évolution Cagnotte

Avec Git, aucun problème de fusion. :soleil: Vous n’avez pas besoin de connaître tous les bouts de code que vous avez modifiés. Il va, comme un grand, fusionner votre évolution avec votre code principal.

On dit qu’un bon développeur est toujours fainéant ! :-° En fait, un bon développeur trouvera toujours une technique simple pour faire le travail à sa place. Eh bien, Git est l’outil idéal dans ce cas. Pas besoin de s’enquiquiner des heures avec une centaine de copier/coller, avec le risque de tout casser, alors qu’il fait la fusion pour nous et sans erreurs.

Il va créer une branche virtuelle, mémoriser tous vos changements, et seulement quand vous le souhaitez, les ajouter à votre application principale. Il va vérifier s'il n’y a pas de conflits avec d’autres fusions, et le tour est joué !

Pour connaître les branches présentes dans notre projet, il faut taper la ligne de commande :

git branch

Dans un premier temps, vous n’aurez que :

git branch
* master

Et c’est normal. L’étoile signifie que c’est la branche sur laquelle vous vous situez et que c’est sur celle-ci qu'actuellement vous réalisez vos modifications.

Entre nous, il est souvent préférable de créer une branche pour une modification. La création prend 30 secondes et vous économise beaucoup de temps de galère si vous faites des bêtises sur votre branche master.

Revenons au projet de M. Robert. Nous avons donc notre branche master, et nous souhaitons maintenant réaliser la fonctionnalité Cagnotte. Pour cela, on tape :

git branch cagnotte

Cette commande va créer la branche Cagnotte en local (elle ne va pas être dupliquée sur le dépôt distant).

Vous pouvez de nouveau taper la ligne de commande :

git branch
* master
cagnotte

Vous pouvez maintenant voir votre branche master et votre branche Cagnotte. Comme vous pouvez le voir, la petite étoile est toujours sur la branche master. Nous avons créé la branche Cagnotte mais nous n’avons pas encore basculé sur celle-ci. Pour basculer de branche, nous allons utiliser :

git checkout cagnotte

Vous aurez donc :

git branch
master
* cagnotte

La branche va fonctionner comme un dossier virtuel. Avec Git checkout, on va être téléporté dans le dossier virtuel Cagnotte. On reste dans le dossier OC physiquement, mais virtuellement nous sommes passés dans un monde parallèle !  Vous pouvez désormais réaliser votre évolution sans toucher à la branche master qui abrite votre code principal qui fonctionne. Vous pouvez rebasculer si besoin à tout moment sur la branche master, sans impacter les modifications de la branche Cagnotte.

Réalisez un commit

Vous avez réalisé des évolutions sur la branche Cagnotte et il va falloir maintenant demander à Git de les enregistrer.

Pour ce faire, nous allons lui envoyer la commande :

git commit -m “Réalisation de la partie cagnotte côté front end”    

Vos modifications sont maintenant enregistrées avec comme description “Réalisation de la partie cagnotte côté front end”. La description est très importante pour retrouver le fil de vos commits, et revenir sur un commit en particulier. Ne la négligez pas !

Félicitations ! Vous venez d’être couronné le roi du commit ! :pirate:

Réalisez votre premier push

La commande Git push permet d'envoyer les modifications que l'on a réalisées en local sur le dépôt à distance, alors que la commande Git pull permet de récupérer en local le projet distant ! Nous reparlerons de ces deux commandes, plus en détail, un peu plus tard dans le cours !

Cette partie vous a permis de découvrir la gestion de versions pour le développement et de prendre en main Git. Bien sûr, il vous arrivera de faire des erreurs et nous allons voir dans la partie suivante comment les réparer !

Mais avant cela, passons au quiz ! :)

Exemple de certificat de réussite
Exemple de certificat de réussite