aboutsummaryrefslogtreecommitdiff
path: root/source/blog/2017-06-01-git.md
blob: be41aa6a1b9f88315abfadcb0586edb722252692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
---
title: "Git ?"
date: 2017-06-01T00:37:05+02:00
date_display: Jun 01, 2017
---


Toujours en cours de rédaction !

[Git](https://en.wikipedia.org/wiki/Git_(software)) (bonne lecture) est, pour
faire simple, un logiciel qui permet de faire du controle de version de 
fichiers.

# Définitions

Avant de découvrir comment utiliser les commandes git, il va falloir donner
quelques définitions:

**Git** est le nom du logiciel en question.

**GitHub**/**Gitlab** sont des services installés sur des serveurs. Il
est important de faire la différence entre le logiciel, 
git, qui peut s'installer sur la machine local et GitHub, ou Gitlab, qui 
sont des services hébergés sur internet qui permettent de partager son code.

## Github vs Gitlab

La différence entre les deux services c'est que l'un est libre alors que
l'autre non. Et ce n'est pas parceque GitHub héberge plein de projets libre ou
open-source que sont code est open-source !
Étant donnée que [Gitlab est libre](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/LICENSE)
il existe une association, [framasoft](https://framasoft.org/), qui propose 
un service basé sur le même logiciel: [framagit](http://framagit.org/). 

# Installation

L'installer à télécharger ce trouve à cette [adresse](https://github.com/git-for-windows/git/releases/tag/v2.13.0.windows.1)

# Exercices

Pour l'exercice suivant, pas de recherche sur Google ! C'est à vous de trouver
les commandes avec votre tête (et la commande `git help` bien sur :p). Bonne
reflexion (et lecture de la doc) ! ;)

## Configuration de git

La première étape est de configurer git, pour cela il faut configurer son
nom et son email. (Plus facile pour les travaux collaboratif lorsque l'on veut
savoir qui à fait quoi)

## Création du projet

Pour créer un projet, commencer par créer un dossier et aller dedans puis
initialiser le repository git.

Créer un fichier, mettez un peu de texte dedans. Par exemple pour que
l'exercice soit plus concret créer un site web, ici une page index.html avec du
code au norme W3C dedans.

Une fois le fichier créer ajouté le fichier à l'index puis enregistrer le tout
dans un commit.

## Ajouter des éléments au projets

Imaginons que vous utilisez l'exemple d'un site web, rajoutez une seconde page
et commitez la.

## Ajout d'une fonctionnalité

Pour ajouter une fonctionnalité, il va faloir créer une branche et y rajouter
et/ou modifier un fichier puis de le commiter.

Une fois finit vous revenez sur la branche master puis merger la branche crée
précedament dans master.

## Partage du code

Ajouter le repository distant sur lequel vous souhaiter partager votre code
puis push le.

## Collaboration

Imaginons qu'un autre développeur à contribuer à votre projet, récupez sont 
travail.

Faite vos modifications puis partagez les.

# Bonus

Une fois l'exercice termine, et pas avant :p, vous pourez aller voir sur les
sites suivants pour glanner deux ou trois conseil sur l'usage de git:

- [http://gitimmersion.com](http://gitimmersion.com)
- [Vim pour les humains](https://vimebook.com/fr)