Installation et configuration de Git
Installation et configuration de git pour github.
On ne montrera pas ici comment utiliser git en ligne de commande.
Installation
Git
Sous mac
Sous mac
On utilise brew :
brew install git
Windows
Windows
winget install --id Git.Git -e --source winget
Github cli
Vous pouvez aussi télécharger l'utilitaire de github pour la ligne de commande : github CLI.
CLI signifie Command Line Interface.
Nous ne l'utiliserons pas ici, mais je vous invite à lire sa documentation, il permet d'interagir avec github uniquement à la ligne de commande sans cliquer sur aucun bouton, ce qui est plus rapide.
Vscode
Il existe de nombreux plugins possibles pour l'éditeur vscode. Nous en utiliserons 2, en plus du plugin par défaut :
Configuration
Vous allez travailler sur vos projets git à plusieurs. Il faut pouvoir à tout moment savoir qui a fait quoi sur le projet. Il est donc impératif que vos données personnelles soient à jour.
La configuration de git s'effectue à trois niveaux successifs :
- au niveau du système. Le fichier par défaut est
/etc/gitconfigsous unix. - au niveau du compte. Par défaut le fichier de configuration de git est
~/.gitconfig. - au niveau de chaque projet. Par défaut le fichier de configuration de git est
.git/configà la racine du projet
On mettra les informations générales dans le fichier de configuration du compte (identité et comportement général de git) avec la commande git config --global <variable> <valeur> et les informations spécifiques pouvant changer dans la configuration du projet (les origines par exemple) avec la commande git config <variable> <valeur>.
Info personnelles
Renseigner ces infos de façon globale pour tout projet (vous pourrez changer ces infos pour chaque projet, mais mettez des infos corrects par défaut) :
Dans un terminal, tapez les commandes
git config --global user.name "Your name here"
git config --global user.email "your_email@example.com"
Rebase comme fusion par défaut
On définie tout de suite la stratégie de fusion.
Dans un terminal, tapez la commande
git config --global pull.rebase merges
Ceci nous permettra par défaut :
- de faire un rebase de l'origin sur votre branche locale
- de préserver les merge (fusion) de branches déjà présentes (et qui donc, si elles existent, ont une fonction sémantique dans votre projet)
Vous pourrez ensuite faire des git pull tout seul et ils seront rebasés par défaut et préserveront les merges existant. Le meilleur des deux monde en somme.
Branche par défaut
Pour être cohérent avec github, on va dire que tout nouveau projet commence avec la branche main.
Par défaut c'est master (et ça fait des histoires).
Dans un terminal, tapez la commande
git config --global init.defaultBranch "main"
Éditeur de messages
On va mettre vscode comme éditeur par défaut pour renseigner les commits.
Dans un terminal, tapez la commande
git config --global core.editor "code --wait"
Vous n'utiliserez que très peu l'éditeur par défaut une fois que vous ferez vos commit avec l'option -m.
Par défaut l'éditeur est vi. Il sera toujours présent quelque soit l'endroit où au aurez besoin de faire un commit sur un système unix (genre un serveur distant). Attention cet éditeur fonctionne de façon totalement différente que ce dont on a l'habitude.
Configurations optionnelles
On met de la couleur dans le terminal par défaut.
Dans un terminal, tapez la commande
git config --global color.ui true
Pour éviter d'avoir un pager lors des git log.
Dans un terminal, tapez la commande
git config --global pager.log false
Si l'on ne met pas cette option, les logs seront automatiquement passé à more par défaut pour paginer les résultats.
On obtiendrait le même résultat sans utiliser la config ci-dessus en utilisant l'argument de git --no-pager, par exemple :git --no-pager log. Notez que --no-pager est un argument de git, pas de sa commande log, il est donc placé avant celle-ci.