python

Git / Github

Gestion de versions

Git est un logiciel de gestion de version. Il permet de créer un dépôt local décentralisé sur notre machine.
Github est la principale plateforme d’hébergement de projets de développement sur le web où l'on sauvera notre dépôt distant.

Mon environnement

Windows 10 et terminal Powershell

Installation de git: Lien vers git
Création de mon compte GitHub: Lien vers Github
Dans le cadre de mon travail, j'utilise plutôt GitLab.

Configuration

A faire la première fois dans un terminal

git config

La commande git config permet de configurer son git. Commençons par définir notre login et notre email lié à notre compte GitHub.

  • 
    > git config --global user.name "mon_login"
    > git config --global user.email mon_email@mailbox.com
    > git config user.name
    mon_login

Configurer les couleurs par défaut

  • 
    > git config --global color.diff auto
    > git config --global color.status auto
    > git config --global color.branch auto

Changer l'éditeur en notepad et l'outil de merge en vimdiff

  • 
    > git config --global core.editor notepad.exe
    > git config --global merge.tool vimdiff

Lister les paramètres de configuration

Pour finir, nous allons vérifier que les paramètres de configuration que nous avons renseignés sont corrects.

  • 
    > git config --list 

Création de mon premier dépôt local

Pour la gestion de versions de son projet de développement sur son poste

On va se placer dans le répertoire de travail contenant son nouveau projet de développement et ouvrir un terminal.

Initialisation de son dépôt local

La commande git init initialise un dépôt vide avec le répertoire .git.

  • 
    > git init

Ignorer certains fichiers

Ajouter un fichier .gitignore dans son répertoire de travail afin d'y lister les fichiers ou répertoires que l'on veut ignorer.

  • 
    
    /env
    .gitignore
    mon_répertoire
    mon_fichier
    *.xls

Voir les fichiers qui peuvent être ajoutés à l'index

  • 
    > git status

Ajouter tous les fichiers à l'index

  • 
    > git add .

Enregistrer les modifications dans le dépôt local

  • 
    > git commit -m "Mon premier commit"

Création de mon premier dépôt distant

Pour sauver et partager son projet

Se connecter à son compte GihHub dans son navigateur
Cliquer sur New
Renseigner le nom de son dépôt par exemple mon_depot et choisir un dépôt publique ou privé.
Le dépôt distant sera créé avec l'url suivant:

  • 
    https://github.com/mon_login/mon_depot.git

Du dépôt local vers mon dépôt distant

Pour envoyer son commit sur le dépôt distant

Commande push

Les commandes suivantes, à saisir dans le terminal la première fois, permettent de faire le lien entre le dépôt local et le dépôt distant, de se placer dans la branche principale et d'envoyer le commit vers le dépôt distant.

  • 
    > git remote add origin https://github.com/nicot3m/mon_depot.git
    > git branch -M master
    > git push -u origin master
    

Pour les prochains commits

Il faudra saisir à nouveau les commandes suivantes:

  • 
    > git status
    > git add .
    > git commit -m "Mon commentaire"
    > git push"
    

Du dépôt distant vers mon répertoire local

Récupérer un dépôt distant ou mettre à jour le dépôt local à partir du dépôt distant

Si on n'a pas encore de dépôt local, on peut utiliser la commande clone.

Dans l'exemple suivant, on crée un dépôt local qui est un clone de mont dépot distant mon_depot.git dans le répertoire local.

  • 
    > git clone  https://github.com/nicot3m/mon_depot.git
    

Si on a déjà un dépôt local, il suffit d'utiliser la commande pull.

Ainsi, le dépôt local sera mis à jour à partir du dépôt distant.

  • 
    > git pull
    

Les branches

Il est possible de créer des branches esclaves rattachées à la branche master.
On crée d'abord une branche dev puis par exemple une branche pour une nouvelle fonctionnalité ou un hotfix.

La commande branch, utilisée sans argument, permet de lister les branches existante et de voir la branche active (avec une étoile).

Dans l'exemple suivant, on n'a que la branche master et elle est active.

  • 
    > git branch
    * master
    

La commande branch suivi d'un nom permet de créer une nouvelle branche.

Dans l'exemple suivant, on crée la branche de puis on liste à nouveau les branches.

  • 
    > git branch dev
    > git branch
      dev
    * master
    

La commande checkout permet de se placer dans une branche.

Dans l'exemple suivant, on se place dans la branche dev.

  • 
    > git checkout dev
    > git branch
    * dev
      master
    

Il faut maintenant pousser la nouvelle branche sur le dépôt distant avec la commande git push et l'option --set-upstream.

Dans l'exemple suivant, on pousse la branche dev sur GitHub.

  • 
    > git push --set-upstream origin dev
    

Mettre à jour la branche parent à partir de la branche esclave avec la commande merge.

Dans l'exemple suivant, après avoir modifié un fichier dans la branche dev et fait un commit que l'on a poussé sous GitHub, on merge la branche dev dans la branche master. Il faut ensuite faire un push de la branche master modifiée sur le dépôt distant.

  • 
    > git checkout master
    > git merge dev
    > git push
    

logo nicot3m © 2023 nicot3m - Site web réalisé par Nicolas Habrias - Tous droits réservés - Contact: nicot3m@gmail.com