Mémo Git

git est un logiciel de gestion de versions décentralisé.

C'est un logiciel libre créé par Linus Torvalds, auteur du noyau Linux, et distribué selon les termes de la licence publique générale GNU version 2.

En 2016, il s’agit du logiciel de gestion de versions le plus populaire qui est utilisé par plus de douze millions de personnes4. (Wikipedia)

https://git-scm.com/

Démarrer git

Pour démarrer git :

Positionnez-vous avec l'explorateur sur un répertoire (si vous aves déjà un dépôt choisissez le répertoire de votre dépôt)

Clic-droit, puis choisir entre diverses options, par exemple :

Git Bash #démarre git en mode console

Mais aussi :

Git Gui #démarre git en mode graphique
Git Init Here #pour initialiser un dépôt

Démarrez avec Git Bash pour suivre le guide...

Initialiser un dépôt

git init

git init est utile au démarrage d'un dépôts sans dépôt distant au préalable.

Pour initialiser un dépôt sur votre ordinateur, il faut :

se positionner sur le répertoire de dépôt puis clic-droit + Git Bash

taper la commande

$ git init

Cela fait, un sous-répertoire .git est créé. Il contient tous les fichiers nécessaires à la gestion du dépôt.

Indexer vos documents

#indexer tous les fichiers avec les sous-répertoires
$ git add --all
#valider l'indexation
$ commit -m'votre message'

Pour savoir où vous en êtes :

# indiquer l'état du dépôts
$ git status
# faire la liste des 4 derniers commits
$ git log -4

Revenir en arrière

git checkout permet de désigner une branche comme active.

$ git checkout ae6788e #se positionne sur le commit commençant par ae6788e
$ git checkout master #on revient à l'état du dépôt courant

Dépôt centralisé

Un dépôt centralisé permet de partager les mises à jour d'un logiciel.

Sur GitHub vos dépôts seront en lecture public. Par contre la mise à jour du dépôt sera sécurisé.

Clé SSH

Pour accéder au dépôt en mise à jour il faut une clé SSH.

Une fois cela fait, fournissez votre clé publique id_rsa.pub à l'administrateur du dépôt centralisé.

Générer votre clé SSH

Suivre les étapes générer une clé SSH

Votre clé privée doit être protégée par une phrase servant de mot de passe appelée pathphrase.

git et ssh

Chaque fois que vous accéderez au dépôt distant, ssh vous demandera votre PassPhrase. Pour éviter cela vous devez installer un fichier .profile.

Pour cela suivre les indications de la documentation

Désormais au démarrage de Git Bash vous fournirez votre PathPhrase. En cas de besoin il est possible d'actualiser la PathPhrase :

#tapez ceci et suivre les étapes
$ ssh-add

git remote

La commande git remote permet de mémoriser un lien permanent depuis votre dépôts vers le dépôts centralisés.

# Mémoriser un lien vers le dépôt de l'équipe n
# ppe32 est l'alias du dépôt distant
$ git remote add ppe32 git@github.com:ppe32w2014/equipen.git
#voir la liste des remotes
$ git remote -v

git push

La mise à jour du dépôt distant doit être faite :

à chaque mise à jour importante

au moins une fois par PPE

# Met à jour le dépôt distant[ppe32] depuis la branche master du dépôt local
$ git push github master

git pull

La mise à jour du dépôt local doit être faite :

si besoin...

afin d'être sur d'avoir la dernière version du dépôt distant

avant un git push si nécessaire

#dépôt distant:ppe32
$ git pull ppe32 #mise à jour de la branche active