Git – Apprendre à pousser son code et quelques astuces

Git : Qu’est ce que c’est ?

Git un gestionnaire de version trés répandu et largement utilisé aujourd’hui. A son origine, Linus Torvalds, le créateur du noyau du trés connu système d’exploitation Linux. Git a été développé en 2005.

On parle de commit pour effectuer un changement ou modification. Le succés de Git par rapport à d’autres outils alternatifs peut s’expliquer par ses performances, sa sacurité et sa flexibilité.

  • Performances : les algorithmes pour commiter des changements, créer des branches, comparer d’anciennes versions, faire des merges ont été optimisés pour la performance.
  • Sécurité : Il assure l’authenticité de lhistorique de votre code source grâce à son algorithme de cryptographie SHA1.
  • Flexibilité : Il permet d’avoir des processus de développement non linéaire et il est compatible avec de nombreux systemes et protocoles.

Pour transporter les données, vous pouvez utiliser du SSH (Secure Shell), le protocole Git qui utilise un processus en arrière plan (deamon). Son inconvénient est qu’il nest pas sécurisé contrairement à SSH et enfin l’HTTP/S.

SSH est privilégié la plupart du temps.

Installer Git sur Linux

Il existe plusieurs méthodes d’installation sur Linux. Je montre celle qui, selon moi est la plus simple.

Installe le depuis ton terminal de cette façon sur un système basé sur du Débian, tel que Ubuntu

$ sudo apt update
$ sudo apt install git

Sur un système tel que Fedora

 $ sudo yum install git 

Tu peux controller la version en tapant la commande suivante :

 $ git --version

Créé toi un compte chez l’hébergeur de code Github et ajoute à la suite des commandes ci-dessous ton adresse utilisateur et ton adresse mail que tu as précédemment renseignés

Git : Personne portant un tee-shirt Gthub

Configure-le avec ton nom d’utilisateur et ton adresse e-mail

$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"

Pour vérifier tes paramètres :

$ git config --list

Hub – l’extension de git en ligne de commande de GitHub sans jamais quitter le terminal

Installez Hub facilement à l’ade de snap

$ sudo snap install --classic hub

Avant d’effectuer nos premiers pas, tu peux commencer par suivre mes guides pas à pas dans l’ordre suivant : Ruby on Rails : Les 3, 2 et 1 façons d’installer le framework sur Linux, et Nouveau projet Rails – Démarrer un nouveau projet Ruby ou React

Premiers pas et usage pour pousser son code sur Github

Si vous avez suivi les précédents guide pas à pas, nous allons commencer par initialiser les dépôts Git à partir de notre projet existant.

Allez dans votre projet existant, pour notre exemple notre dossier s’appelle helloworld

$ cd helloworld

Initialisez le dépôt Git de votre répertoire helloworld

$ git init

Cette commande a pour effet de créer un sous-répertoire nommé .git qui servira pour le suivi de version

sous repertoire git

Place tes fichiers sous suivi de version

$ git add .

Validez les informations

$ git commit -m 'First commit'

Créez le dépôt sur ton hébergeur de code que tu as choisis, j’utilise Github dans mon exemple

$ hub create

Pour vérifier votre connexion distance avec votre dépôt distant qui vient d’être créé

$ git remote -v

Tu dois obtenir le résultat suivant :

origin [email protected]:pccindow/helloworld.git (fetch)
origin [email protected]:pccindow/helloworld.git (push)

Poussez votre code

$ git push origin master

Tu peux vérifier sur ton compte Github que tu retrouves bien le code que tu viens de pousser

Désormais, à chaque fois que tu auras avancé sur ton projet, tu sauvegarderas ton travail qui sera à la fois en local sur ta machine mais aussi sur ton compte Github pour être sur de ne rien perdre !

Pour vérifier l’état de tes fichiers et savoir sur quelle branche tu te trouves

$ git status

Créez une nouvelle branche et donne lui un nom. Dans cet exemple nous l’appelons « commit »

$ git checkout -b commit

Place les fichiers sous suivi de version

$ git add .

Quelques informations te seront données comme le nombre de fichiers modifiés, des statistiques sur les lignes ajoutées et effacées dans ce commit.

Valide les modifications de la branche sur laquelle tu es, ici « This stuff is done ».

$ git commit -m 'this stuff is done'

Enfin, tu pousses ton travail sur le dépôt Github

$ git push origin commit

Voici une nouvelle commande : la « pull-request » permet d’informer d’autres personnes des changements que tu as apporté. Une fois qu’une demande est envoyée, les parties prenantes au projet peuvent examiner les changements avant de les valider.

$ hub pull-request commit

Quelques raccourcis pour vos commandes Git

Pour ne pas avoir à taper l’intégralité du texte d’une commande, il est possible de définir un alias pour chacune des commandes Git.

Tu vas gagner en productivité 😉

git : être plus productif

Voici quelques exemples :

$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status

Désormais, tu pourras enchaîner les commandes suivantes et pousser ton code :

$ git st
$ git add .
$ git co -b 'nom_de_la_branche'
$ git ci -m 'this stuff is done'
$ git push origin 'nom_de_la_branche'
$ hub pull-request 'this stuff is done'

En bonus, l’outil tig pour visualiser les différents commits

Tig est une mélioration du git log. Ainsi, tu peux visualiser l’état de ta branche et les différents commits.

Pour l’installer, c’est très simple

$ sudo apt install tig

Depuis votre projet, entrez la commande Tig

$ tig

Voici un apercu !

Apercu de l'outil tig

Si toi aussi tu as d’autres astuces ou des outils qui te facilites les tâches, vient les partager en commentaire !

Sources

https://git-scm.com/docs

https://github.com/github/hub

https://github.com/jonas/tig

signature Pierre-Christophe

Aucun commentaires

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.