-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathgit_fr.html
More file actions
200 lines (166 loc) · 8.32 KB
/
git_fr.html
File metadata and controls
200 lines (166 loc) · 8.32 KB
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
<title>Git at CASD</title>
<link rel="stylesheet" href="dist/reset.css"/>
<link rel="stylesheet" href="dist/reveal.css"/>
<link rel="stylesheet" href="dist/theme/dracula.css"/>
<style>
.left-align {
text-align: left;
}
</style>
<!-- Theme used for syntax highlighted code -->
<link rel="stylesheet" href="plugin/highlight/monokai.css"/>
</head>
<body>
<div class="reveal">
<div class="slides">
<section>
<!--Slide 0: overview-->
<section>
<a href="https://casd.eu">
<img src="assets/CASD.png" alt="casd logo" style="
height: 250px;
margin: 0 auto 4rem auto;
background: transparent;
-webkit-filter: invert(1);
filter: invert(1);
" class="demo-logo"/>
</a>
<h3>Git au CASD</h3>
<p>
<small>Equipe Datascience</small>
</p>
</section>
<section class="left-align">
<h3>Objectifs</h3>
<ul>
<li>Qu'est-ce que Git ?</li>
<li>Comment fonctionne Git ?</li>
<li>Qu'est-ce que GitHub/Gitlab ?</li>
<li>Git au CASD</li>
</ul>
</section>
</section>
<!--Slide 1: What is git?-->
<section>
<section class="left-align">
<h3>Qu'est-ce que Git ?</h3>
<p><em>Git</em> est un <em>outil de versioning</em> distribué, créé par <em>Linus
Torvalds</em> en 2005 pour gérer le noyau Linux. Les principales caractéristiques de Git sont : </p>
<ul>
<li><em>Le versionning</em> : Le traçage détaillé (auteur, description, ...) et chronologique des modifications.</li>
<li><em>La retroversion</em> : La possibilité de revenir à toute version antérieure d'un fichier.</li>
<li><em>La collaboration</em> : La possibilité de travailler à plusieurs, en partageant ses contributions .</li>
</ul>
<p></p>
</section>
<section>
<h3>Les principaux concepts de Git (1)</h3>
<ul>
<li><em>Dépôt Git (repo)</em> : Le répertoire où Git enregistre toutes les modifications de vos fichiers</li>
<li><em>Répertoire de travail</em> : L'espace contenant les répertoires et fichiers suivis par Git.</li>
<li><em>Index</em> : Un espace temporaire pour détailler les modifications avant de les valider.</li>
<li><em>Instantané (Snapshot)</em> : Une sauvegarde de l'état de tous les fichiers à un instant donné.</li>
</ul>
</section>
<section>
<h3>Les principaux concepts de Git (2)</h3>
<ul>
<li><em>Commit</em> : L'action qui enregistre un instantané d'un ensemble de modifications, incluant la date, l'auteur et une description.</li>
<li><em>Branche</em> : Collection organisée de commits. Chaque repo contient au moins une branche. La branche principale est appelée la <em>master</em>. </li>
<li><em>Branche master</em> : La branche contenant la version la plus opérationnelle et robuste du code, dédiée à la production.</li>
</ul>
</section>
<section>
<h3>Les principaux concepts de Git (3)</h3>
<ul>
<li><em>HEAD</em> : Un pointeur désignant la position actuelle dans la branche active, où sera enregistré le prochain commit.</li>
<li><em>Fusion (merge)</em> : Un espace temporaire pour prévisualiser et valider les modifications lors de l'enregistrement des modifications d'une branche dans une autre.</li>
</ul>
</section>
</section>
<!--Slide 2: How does git work?-->
<section>
<section>
<h3>Workflow Git</h3>
<img src="assets/git_workflow_commands.png" alt="git-workflow" style="width: 60%; height: auto;"/>
</section>
<section>
<h3>Fusion de branches</h3>
<img src="assets/git-branch.png" alt="git-branch"/>
</section>
<section>
<h3>TP1</h3>
<img src="assets/git_workflow_commands_TP1.png" alt="git-workflow-tp1" style="width: 60%; height: auto;"/>
</section>
</section>
<!--Slide 3: What is github/gitlab?-->
<section>
<section class="left-align">
<h3>Qu'est-ce que Github ?</h3>
<p><a href="https://github.com/">github.com</a> est le service web d'hébergement de dépôts Git le plus populaire. Il ajoute de
nombreuses fonctionnalités à Git (ex : interface utilisateur, pull requests, système de gestion de projets, etc). Il existe d'autres solutions similaires :</p>
<ul>
<li><a href="https://about.gitlab.com/">Gitlab.com</a></li>
<li><a href="https://bitbucket.org/">Bitbucket (par Atlassian)</a> </li>
<li><a href="https://aws.amazon.com/codecommit/">AWS CodeCommit</a></li>
<li><a href="https://azure.microsoft.com/en-us/products/devops">Azure DevOps (Repos)</a></li>
</ul>
</section>
<section class="left-align">
<h3>Services web Git auto-hébergés </h3>
<p>Il existe de nombreuses solutions web Git auto-hébergées :</p>
<ul>
<li><em>GitLab Community Edition (CE)</em> : Open-source et très complète </li>
<li>Gitea : Open source, légère et facile à installer </li>
<li>SourceHut : Modulaire, minimaliste et rapide </li>
<li>Gitprep : Clône de Github </li>
</ul>
</section>
</section>
<!--Slide 4: git at casd -->
<section>
<section >
<h3>Git au casd</h3>
<p>Le CASD propose propose deux types de dépôts Git distants : un dépôt <em>git-bare</em>, et <em>un serveur auto-hébergé gitlab-ce</em> </p>
<ul>
<small><li>Dépôt Git Bare : disponible par défaut pour tous les projets.</li></small>
<small><li>Serveur Gitlab-ce : disponible uniquement sur demande <em>à l'équipe PMS</em>, après une estimation de coût basée sur la configuration du serveur.</li></small>
</ul>
</section>
<section>
<h3>Qu'est-ce qu'un dépôt Git Bare ? </h3>
<p>Un dépôt Git bare est un dépôt Git qui ne dispose pas d'un répertoire de travail. Il ne contient que le <em>répertoire .git</em>
(i.e., les données de versionning). On l'utilise généralement :</p>
<ul>
<li>Comme un <em>dépôt central</em> pour un projet collaboratif (version allégée de Github)</li>
<li>Comme une <em>cible de déploiement en continu</em></li>
</ul>
</section>
<section>
<h3>TP2</h3>
<img src="assets/git_workflow_commands_TP2.png" alt="git-workflow-tp2" style="width: 60%; height: auto;"/>
</section>
</section>
</div>
</div>
<script src="dist/reveal.js"></script>
<script src="plugin/notes/notes.js"></script>
<script src="plugin/markdown/markdown.js"></script>
<script src="plugin/highlight/highlight.js"></script>
<script>
// More info about initialization & config:
// - https://revealjs.com/initialization/
// - https://revealjs.com/config/
Reveal.initialize({
hash: true,
// Learn about plugins: https://revealjs.com/plugins/
plugins: [RevealMarkdown, RevealHighlight, RevealNotes],
});
</script>
</body>
</html>