2
0
Julien Dehos преди 8 години
родител
ревизия
1aa9b98ed2
променени са 10 файла, в които са добавени 90 реда и са изтрити 85 реда
  1. 2 3
      Makefile
  2. 2 2
      README.md
  3. 6 9
      before.md
  4. 5 5
      branches.md
  5. 12 12
      depot_distant.md
  6. 12 12
      depot_local.md
  7. 4 4
      forks.md
  8. 14 14
      index.md
  9. 13 13
      installation.md
  10. 20 11
      template.html

+ 2 - 3
Makefile

@@ -1,14 +1,13 @@
 MD_FILES = $(shell find -name "*.md")
 HTML_FILES = $(MD_FILES:.md=.html)
-TEMPLATE_OPT = --template template.html --css template.css 
 
 all: $(HTML_FILES)
 
 before.html: before.md
-	pandoc $(TEMPLATE_OPT) -o $@ $<
+	pandoc --css template.css -o $@ $<
 
 %.html: %.md before.html 
-	pandoc $(TEMPLATE_OPT) --toc --toc-depth 2 --include-before before.html -o $@ $<
+	pandoc --template template.html --css template.css --toc --toc-depth 2 --include-before before.html -o $@ $<
 
 publish:
 	scp $(HTML_FILES) *.svg *.png template.* yangra.univ-littoral.fr:public-html/enseignements/tutoriel_git/

+ 2 - 2
README.md

@@ -1,7 +1,7 @@
 # tutoriel git
 
-Tutoriel pour apprendre les bases de git et du [serveur
-GOGS](https://gogs.univ-littoral.fr/) de l'[ULCO](http://univ-littoral.fr/). 
+Tutoriel pour apprendre les bases de Git et du [serveur
+Gogs](https://gogs.univ-littoral.fr/) de l'[ULCO](http://univ-littoral.fr/). 
 
 Écrit en markdown pour produire du HTML (+ SVG, PNG).
 

+ 6 - 9
before.md

@@ -1,11 +1,8 @@
 
-
-- [introduction](index.html) 
-- [installation](installation.html) 
-- [dépôt local](depot_local.html) 
-- [dépôt distant](depot_distant.html) 
-- [branches](branches.html) 
-- [forks](forks.html) 
-
-* * * * *
+- [Introduction](index.html) 
+- [Installation et configuration](installation.html) 
+- [Dépôt local](depot_local.html) 
+- [Dépôt distant](depot_distant.html) 
+- [Branches](branches.html) 
+- [Forks](forks.html) 
 

+ 5 - 5
branches.md

@@ -1,6 +1,6 @@
 
 ---
-title: "Tutoriel git : branches"
+title: "Branches"
 date: 2016-03-25
 ---
 
@@ -9,7 +9,7 @@ suite des autres, sur une même branche.  Git permet également, à partir d'un
 commit donné, de réaliser plusieurs branches en parallèle.  Les branches
 peuvent ensuite être fusionnées, abandonnées ou même supprimées.
 
-L'utilisation des branches est très naturelle avec git et permet d'organiser le
+L'utilisation des branches est très naturelle avec Git et permet d'organiser le
 déroulement du projet. Souvent, on utilise une branche principale `master` qui
 "doit toujours fonctionner" et, pour chaque fonctionnalité à ajouter, on dérive
 une nouvelle branche que l'on fusionne ensuite dans le `master` une fois la
@@ -93,7 +93,7 @@ Par exemple, pour créer et envoyer la branche `intro_papier` sur le dépôt dis
 
 ![](branches_08.svg)
 
-On peut également voir sur le site gogs que la branche a bien été créée sur le 
+On peut également voir sur le site Gogs que la branche a bien été créée sur le 
 serveur.
 
 ![](branches_12.png)
@@ -156,7 +156,7 @@ sur les `git rebase`).
 
 ## Résumé et méthode de travail
 
-Résumé des commandes git précédentes :
+Résumé des commandes Git précédentes :
 
 ---|---|
 `git branch` | afficher la liste des branches |
@@ -187,7 +187,7 @@ Quelques conseils de méthode de travail :
 - Créez une branche `b2` à partir du commit précédant le master courant, faites
   quelques commits dans `b2` puis fusionnez-les dans le master.
 - Fusionnez le master dans `b1` et vérifiez le graphe des commits avec le client
-  git console et avec un client graphique.
+  Git console et avec un client graphique.
 - Envoyez la branche `b2` sur le serveur puis supprimez-la sur le dépôt local puis
   sur le dépôt distant.
 

+ 12 - 12
depot_distant.md

@@ -1,19 +1,19 @@
 
 ---
-title: "Tutoriel git : dépôt distant"
+title: "Dépôt distant"
 date: 2016-03-25
 ---
 
 Git permet de synchroniser un dépôt local avec un dépôt distant (sur un
 serveur).  Ceci permet d'envoyer les commits locaux sur le serveur et,
 réciproquement, de récupérer les commits du serveur dans un dépôt local.
-Lorsqu'un dépôt local est synchronisé avec un serveur, git crée et utilise une
+Lorsqu'un dépôt local est synchronisé avec un serveur, Git crée et utilise une
 étiquette prédéfinie supplémentaire (`origin/master`) pour indiquer le dernier
 commit du serveur.
 
-Il existe des serveurs comme github qui permettent d'héberger
+Il existe des serveurs comme Github qui permettent d'héberger
 gratuitement des dépôts publics (visibles par tout le monde).
-Le serveur gogs de l'université vous permet d'héberger des dépôts publics ou privés.
+Le serveur Gogs de l'université vous permet d'héberger des dépôts publics ou privés.
 Il dispose d'une page web vous permettant de gérer vos projets. Pour cela,
 allez à l'adresse
 [https://gogs.univ-littoral.fr](https://gogs.univ-littoral.fr) et entrez vos
@@ -26,9 +26,9 @@ commits, dépôts actifs...) :
 
 ![](depot_distant_02.png)
 
-## Créer un dépôt sur un serveur git
+## Créer un dépôt sur un serveur Git
 
-Pour créer un nouveau dépôt distant, allez sur le site du serveur gogs et
+Pour créer un nouveau dépôt distant, allez sur le site du serveur Gogs et
 cliquez "Nouveau dépôt". 
 
 ![](depot_distant_03.png)
@@ -43,7 +43,7 @@ localement. Attention, il y a une méthode plus simple que celle indiquée (cf.
 
 ![](depot_distant_05.png)
 
-Le site du serveur gogs vous permet de configurer différents paramètres
+Le site du serveur Gogs vous permet de configurer différents paramètres
 concernant votre dépôt. Par exemple pour un dépôt privé, vous pouvez indiquer
 les personnes que vous autorisez à récupérer et à modifier le dépôt (cliquez
 "Paramètres" puis "Collaboration" puis entrez et ajoutez le login).
@@ -111,7 +111,7 @@ Les commits/fichiers envoyés sur le serveur sont alors visibles sur la page web
 
 ![](depot_distant_10.png)
 
-Vous pouvez également voir le contenu de votre dépôt avec un client git
+Vous pouvez également voir le contenu de votre dépôt avec un client Git
 graphique.
 
 ![](depot_distant_11.png)
@@ -161,7 +161,7 @@ Une fois le fichier corrigé, vous pouvez commiter...
 
 ## Résumé et méthode de travail
 
-Résumé des commandes git précédentes :
+Résumé des commandes Git précédentes :
 
 ---|---|
 `git clone` | récupère un dépôt distant |
@@ -179,14 +179,14 @@ gérer vos dépôts distants.
 
 ## Exercice 1
 
-- Créez un dépôt sur le serveur gogs et récupérez-le dans un dépôt local.
-- Ajoutez/commitez/pushez quelques fichiers et vérifiez sur le site gogs que
+- Créez un dépôt sur le serveur Gogs et récupérez-le dans un dépôt local.
+- Ajoutez/commitez/pushez quelques fichiers et vérifiez sur le site Gogs que
   les modifications sont bien sur le serveur.
 
 ## Exercice 2
 
 - Associez-vous à un ou deux collègues.
-- Créez un dépôt sur le serveur gogs et ajoutez vos collègues comme collaborateurs.
+- Créez un dépôt sur le serveur Gogs et ajoutez vos collègues comme collaborateurs.
 - Récupérez votre dépôt et ajoutez/commitez/pushez quelques fichiers.
 - Demandez à vos collègues de récupérer votre projet.
 - Demandez à un collègue de commiter/pusher une modification et vérifiez que

+ 12 - 12
depot_local.md

@@ -1,13 +1,13 @@
 
 ---
-title: "Tutoriel git : dépôt local"
+title: "Dépôt local"
 date: 2016-03-25
 ---
 
-L'élément de base d'un projet git est le dépôt. Il s'agit simplement d'un
-dossier classique que l'on demande à git de versionner (journaliser).
+L'élément de base d'un projet Git est le dépôt. Il s'agit simplement d'un
+dossier classique que l'on demande à Git de versionner (journaliser).
 
-Un dépôt git contient l'ensemble des commits (versions sauvegardées du projet).
+Un dépôt Git contient l'ensemble des commits (versions sauvegardées du projet).
 On peut donc revenir à n'importe quelle version du projet. Généralement, on
 appelle `master` la dernière version sauvegardée et `HEAD` la version courante.
 
@@ -34,7 +34,7 @@ La command `git ls-files` affiche la liste des fichiers versionnés.
 
 ## Ajouter des fichiers dans le dépôt
 
-Il faut indiquer explicitement les fichiers que git doit journaliser.  
+Il faut indiquer explicitement les fichiers que Git doit journaliser.  
 
 Par exemple, imaginons qu'on ouvre un nouveau fichier LaTeX `papier.tex`
 dans notre projet.  
@@ -52,7 +52,7 @@ Pour ajouter un fichier au dépôt, il faut utiliser la commande `git add`.
 
 ![](depot_local_06.png)
 
-Ceci indique que git doit prendre en compte le fichier lors des prochains
+Ceci indique que Git doit prendre en compte le fichier lors des prochains
 commits (journalisation), ce qu'on peut vérifier avec un `git status`.
 
 ![](depot_local_07.png)
@@ -105,7 +105,7 @@ commit), qui correspond actuellement au `master` (dernier commit) et au `HEAD`
 Git est très utile pour gérer des fichiers textes que l'on modifie
 régulièrement. En revanche, il n'est pas adapté pour gérer des fichiers dans un
 format non-textuel (images, données compressées, documents word...).  Si on
-ajoute un tel fichier dans le dépôt alors à chaque modification, git stockera
+ajoute un tel fichier dans le dépôt alors à chaque modification, Git stockera
 une nouvelle copie complète (au lieu de stocker uniquement les lignes qui ont
 changé), ce qui est inefficace.
 
@@ -150,7 +150,7 @@ Après ce `git commit`, on a un nouveau commit correspondant au `master` et au
 ## Renommer et supprimer des fichiers
 
 La commande `git mv` permet de renommer un fichier versionné. Il ne faut pas
-utiliser la commande système (`mv`) car dans ce cas git ne saura pas qu'il faut
+utiliser la commande système (`mv`) car dans ce cas Git ne saura pas qu'il faut
 renommer le fichier (il pensera que le fichier manque et essaiera de le
 recréer). Pour rappel, utilisez la commande `git help` pour consulter l'aide
 d'une commande (par exemple ici, `git help mv`).
@@ -238,13 +238,13 @@ Les fichiers sont donc remis dans l'état du commit "13a...", et `master` et
 
 ## Résumé et méthode de travail
 
-Résumé des commandes git précédentes :
+Résumé des commandes Git précédentes :
 
 ---|---|
-`git init` | initialise le dossier courant (nouveau dépôt git) |
+`git init` | initialise le dossier courant (nouveau dépôt Git) |
 `git status` | affiche l'état courant des fichiers |
 `git ls-files` | affiche la liste des fichiers versionnés |
-`git add <fichiers>` | demande à git de versionner des fichiers |
+`git add <fichiers>` | demande à Git de versionner des fichiers |
 `git commit -a` | valide toutes les modifications courantes |
 `git mv <nom1> <nom2>` | renomme des fichiers versionnés |
 `git rm <fichiers>` | supprime des fichiers versionnés |
@@ -273,6 +273,6 @@ Quelques conseils de méthode de travail :
 - Affichez l'historique des commits et revenez dans un état précédent du dépot.
   Vérifiez que vos fichiers reviennent bien à l'état correspondant au commit.
 - Ajoutez une étiquette à un ancien commit et vérifiez que vous la voyez dans
-  l'historique des commits ou avec un client git graphique.
+  l'historique des commits ou avec un client Git graphique.
 - Testez les suppressions de commits.
 

+ 4 - 4
forks.md

@@ -1,6 +1,6 @@
 
 ---
-title: "Tutoriel git : forks"
+title: "Forks"
 date: 2016-03-25
 ---
 
@@ -12,7 +12,7 @@ modifications dans son dépôt, puis les soumettre à Julien (pull request), qui
 choisira ou non de les intégrer dans le dépôt initial (`upstream`).
 
 Le fork est un mode de fonctionnement très répandu dans le monde de
-l'open-source (github entre autres).  Le serveur gogs de l'université possède
+l'open-source (Github entre autres).  Le serveur Gogs de l'université possède
 également une partie publique propice aux forks (cette partie publique est
 cependant réservée aux personnes identifiées à l'université).
 
@@ -24,7 +24,7 @@ complémentaires.
 ## Forker un dépôt distant
 
 Le dépôt de Julien est déjà sur le serveur, dans la partie publique. Fabien se
-connecte sur le site gogs de l'université.  
+connecte sur le site Gogs de l'université.  
 
 ![](forks_01.png)
 
@@ -142,7 +142,7 @@ git merge fork_fabien/master
 
 ## Résumé et méthode de travail
 
-Résumé des commandes git précédentes :
+Résumé des commandes Git précédentes :
 
 ---|---|
 `git remote add <nom> <url>` | ajoute un dépôt distant |

+ 14 - 14
index.md

@@ -1,29 +1,29 @@
 ---
-title: "Tutoriel git : introduction"
+title: "Introduction"
 date: 2016-03-25
 ---
 
 ## À qui s'adresse ce tutoriel ?
-- Objectif du tutoriel : apprendre à utiliser l'outil git et le [serveur
-  gogs](https://gogs.univ-littoral.fr) mis en place par le
+- Objectif du tutoriel : apprendre à utiliser l'outil Git et le [serveur
+  Gogs](https://gogs.univ-littoral.fr) mis en place par le
 [SCOSI](http://scosi.univ-littoral.fr/) à l'[ULCO](http://univ-littoral.fr). 
 - Pré-requis : utilisation basique d'un ordinateur (et notamment du clavier).
 - Public visé : toute personne ayant à manipuler, journaliser ou partager des
   fichiers de texte brut (txt, LaTeX, python, matlab, R, java, CSV...). 
 
-## Qu'est-ce-que git et gogs ?
-- git : système décentralisé de journalisation de fichiers (alternative à
+## Qu'est-ce-que Git et Gogs ?
+- Git : système décentralisé de journalisation de fichiers (alternative à
   mercurial, subversion, CVS...)
-- gogs : service d'hébergement de fichiers utilisable avec git (alternative
-  à github, bitbucket...)
+- Gogs : service d'hébergement de fichiers utilisable avec Git (alternative
+  à Github, Bitbucket...)
 
-## Dans quels cas utiliser git/gogs ?
+## Dans quels cas utiliser Git/Gogs ?
 Git est conçu pour manipuler principalement des fichiers **au format texte**
 (code source, code LaTeX, fichier CSV...). Attention, les fichiers word, excel
-et PDF ne sont pas des fichiers au format texte et git est beaucoup moins
+et PDF ne sont pas des fichiers au format texte et Git est beaucoup moins
 intéressant pour manipuler ce genre de fichiers.
 
-Quelques fonctionnalités/utilisations de git/gogs :
+Quelques fonctionnalités/utilisations de Git/Gogs :
 
 - **journalisation et branches** : « je modifie souvent mes fichiers et je peux
   revenir à mes modifications précédentes, les annuler ou en tester plusieurs
@@ -40,7 +40,7 @@ en parallèle »
 l'université), et des projets privés, visibles et modifiables par les personnes
 que j'indique ».
 
-## Dans quels cas ne pas utiliser git/gogs ?
+## Dans quels cas ne pas utiliser Git/Gogs ?
 - édition collaborative en temps-réel -> sharelatex
 - partage de fichiers "au plus simple" -> dropbox, serveur FTP/HTTP...
 - fichiers dans un format non textuel (word, excel, PDF...) 
@@ -49,7 +49,7 @@ que j'indique ».
 
 ### Notion de "version" (commit)
 
-Un "projet git" contient l'historique de toutes les modifications sauvegardées
+Un "projet Git" contient l'historique de toutes les modifications sauvegardées
 de chaque fichier.  On appelle "commit" un état sauvegardé de ces modifications
 (une version du projet en quelque sorte).
 
@@ -70,7 +70,7 @@ On peut ensuite rassembler ces modifications en fusionnant les branches :
 ### Notion de dépôt (repository)
 
 On appelle dépôt tout l'historique des fichiers et des modifications de notre
-"projet git", c'est-à-dire l'ensemble des commits.  
+"projet Git", c'est-à-dire l'ensemble des commits.  
 
 Un dépôt peut être dupliqué et synchronisé sur différentes machines, ce qui
 permet de partager un projet et pouvoir travailler à plusieurs.  Git est un
@@ -82,7 +82,7 @@ synchroniser avec n'importe quel autre dépôt du projet.
 
 Pour simplifier le déroulement du projet, on met généralement un dépôt sur un
 serveur distant et on synchronise les autres dépôts via ce dépôt distant. C'est
-le mode de fonctionnement du serveur gogs du SCOSI, de github...
+le mode de fonctionnement du serveur Gogs du SCOSI, de Github...
 
 ## Références
 

+ 13 - 13
installation.md

@@ -1,14 +1,14 @@
 ---
-title: "Tutoriel git : installation et configuration"
+title: "Installation et configuration"
 date: 2016-03-25
 ---
 
-Pour utiliser git, il vous faut un client git (et une connexion internet si
+Pour utiliser Git, il vous faut un client Git (et une connexion internet si
 vous voulez utiliser des dépôts distants).
 
 ## Ligne de commandes vs interface graphique
 
-Il existe deux types de client git : le client console (en ligne de commandes)
+Il existe deux types de client Git : le client console (en ligne de commandes)
 et les [clients
 graphiques](https://git-scm.com/book/fr/v2/Git-dans-d%E2%80%99autres-environnements-Interfaces-graphiques)
 (par exemple : gitg, giggle, qgit, gitk, git-gui, github-desktop...).
@@ -16,12 +16,12 @@ graphiques](https://git-scm.com/book/fr/v2/Git-dans-d%E2%80%99autres-environneme
 [La communauté conseille souvent d'utiliser le client
 console.](https://git-scm.com/book/fr/v2/D%C3%A9marrage-rapide-La-ligne-de-commande)
 Celui-ci est certes moche mais c'est le seul qui donne accès à toutes les
-commandes git. De plus, il est souvent plus efficace, une fois passée la phase
+commandes Git. De plus, il est souvent plus efficace, une fois passée la phase
 d'apprentissage. 
 
 ## Installation sous Linux
 
-La plupart des systèmes Linux modernes propose le client git dans leur système
+La plupart des systèmes Linux modernes propose le client Git dans leur système
 de paquets. Par exemple, sur les Linux basés Debian, il suffit de lancer la
 commande console :
 
@@ -31,20 +31,20 @@ sudo apt-get install git
 
 ## Installation sous Mac
 
-Télécharger et installer le client [git pour
+Télécharger et installer le client [Git pour
 Mac](http://git-scm.com/download/mac). Le client console est ensuite accessible
 depuis un terminal.
 
 ## Installation sous Windows 
 
-Télécharger et installer le client [git pour
+Télécharger et installer le client [Git pour
 Windows](http://git-scm.com/download/win). Le client console est ensuite
 accessible depuis l'outils git-bash inclus (ou depuis powershell pour ceux qui
 utilisent cet outil).
 
 ## Configuration
 
-Après avoir installé le client git, il faut configurer le nom et l'adresse
+Après avoir installé le client Git, il faut configurer le nom et l'adresse
 e-mail de l'utilisateur; par exemple, en tapant les commandes consoles : 
 
 ```
@@ -52,7 +52,7 @@ git config --global user.name "Julien Dehos"
 git config --global user.email dehos@nimpe.org
 ```
 
-On peut également configurer l'éditeur de texte et le proxy que le client git
+On peut également configurer l'éditeur de texte et le proxy que le client Git
 doit utiliser; par exemple, en tapant les commandes consoles :
 
 ```
@@ -68,12 +68,12 @@ export http_proxy=http://user:pass@proxyhost:proxyport
 
 ## Obtenir de l'aide
 
-Aide générale sur git :
+Aide générale sur Git :
 ```
 git help 
 ```
 
-Aide sur une commande git :
+Aide sur une commande Git :
 ```
 git help <commande git>
 ```
@@ -82,8 +82,8 @@ Voir également la section [références](index.html#références).
 
 ## Exercice
 
-Installez et configurez le client git sur votre machine.  Vérifiez que votre
-client git peut accéder à l'extérieur, par exemple en récupérant le dépôt
+Installez et configurez le client Git sur votre machine.  Vérifiez que votre
+client Git peut accéder à l'extérieur, par exemple en récupérant le dépôt
 distant `https://github.com/juliendehos/invinoveritas` :
 
 ![](installation_01.png)

+ 20 - 11
template.html

@@ -32,40 +32,49 @@ $endfor$
 </head>
 <body>
 
-    $if(title)$
     <div class="navbar navbar-static-top">
         <div class="navbar-inner">
             <div class="container">
-                <span class="doc-title">$title$</span>
+                <span class="doc-title">Tutoriel Git</span>
                 <ul class="nav pull-right doc-info">
                     <li><p class="navbar-text"> <a href="https://gogs.univ-littoral.fr">Serveur Gogs de l'ULCO</a></p></li>
                 </ul>
             </div>
         </div>
     </div>
-    $endif$
 
     <div class="navbar navbar-static-top">
         <div class="container">
 
             <div class="row">
 
-                $if(toc)$
-                <div id="$idprefix$TOC" class="span3">
+                <div class="span3">
+                    <br>
+
+                    <div class="well toc">
+                        <ul>
+                            <li class="nav-header">Plan du tutoriel</li>
+                        </ul>
+                        $include-before$
+                    </div>
+
+                    $if(toc)$
                     <div class="well toc">
                         <ul>
-                            <li class="nav-header">Table des matières</li>
+                            <li class="nav-header">Plan de la page</li>
                         </ul>
                         $toc$
                     </div>
-                    $for(include-before)$
-                    $include-before$
-                    $endfor$
+                    $endif$
+
                 </div>
-                $endif$
 
                 <div class="span$if(toc)$9$else$12$endif$">
-                    $body$
+$if(title)$
+<h1>$title$</h1>
+$endif$
+
+$body$
                 </div>
 
                 <div class="navbar navbar-static-top">