Révision 1

Makefile (revision 1)
1
all: html wiki
2

  
3
html:
4
	pandoc user_guide.md -o user_guide.html -s --toc	
5

  
6
wiki:
7
	pandoc user_guide.md -o user_guide.wiki -t textile -s --toc
8

  
9
clean:
10
	rm -f user_guide.html user_guide.wiki
user_guide.md (revision 1)
1
% Documentation Utilisateur de la Forge CBP
2
% Moyens Informatique du LIP
3
% Décembre 2012
4

  
5

  
6

  
7
# Introduction et termes fréquemment employés
8

  
9
La forge du Centre Blaise Pascal (CBP) utilise l'application de gestion de projet [Redmine](http://www.redmine.org). La documentation utilisateur de cette application est disponible à [cette page](http://www.redmine.org/projects/redmine/wiki/User_Guide).
10

  
11
Voici une description des termes couramment employés dans ce système :
12

  
13
-   *Projet*. C'est un espace de travail, lié à un sujet déterminé, mis à disposition d'une équipe d'utilisateurs *membres*.
14

  
15
    Un projet peut être *Public* ou *Privé*. Un projet *Privé* n'est visible que par ses *membres*. Un projet *Public* est visible par tout le monde, mais ne peut pas être modifié par les utilisateurs non membres.
16

  
17
    Un projet peut contenir des sous projets.
18

  
19
-   Les différents rôles des utilisateurs membres d'un projet sont *Manager*, *Developer* et *Reporter*. Les utilisateurs membres d'un projet peuvent avoir différents rôles dans ce projet. À chaque rôle est associé différentes permissions :
20

  
21
    -   Les membres *Manager* d'un projet peuvent le configurer, y ajouter des nouveaux membres, modifier son contenu.
22

  
23
    -   Les membres *Developer* d'un projet peuvent modifier son contenu.
24

  
25
    -   Les membres *Reporter* d'un projet peuvent accéder à son contenu et émettre des requêtes.
26

  
27

  
28

  
29
# Ouverture d'un compte utilisateur
30

  
31
## Utilisateur disposant d'un compte à l'ENS Lyon
32

  
33
Un utilisateur disposant d'un compte à l'ENS Lyon n'a pas besoin de créer un compte sur la forge. Il doit directement cliquer sur *Connexion* et entrer son login et mot de passe ENS (il n'est pas nécessaire de cliquer sur *S'enregistrer*). Lors de cette première connexion, le compte est automatiquement crée sur la forge.
34

  
35

  
36
## Utilisateur extérieur
37

  
38
Un utilisateur ne disposant pas de compte ENS doit s'enregistrer (en remplissant le formulaire accessible en cliquant sur *S'enregistrer*). Le compte doit ensuite être activé manuellement par les administrateurs.
39

  
40

  
41

  
42
# Ouverture d'un projet
43

  
44
La création d'un nouveau projet n'est possible que par les administrateurs de la forge. Pour ouvrir un projet, l'utilisateur doit envoyer un mail à <admin@forge.cbp.ens-lyon.fr> en précisant :
45

  
46
- Le nom du projet
47
- L'identifiant du projet
48
- Le gestionnaire de code source préféré (SVN ou Git)
49

  
50
Le nom du projet est libre. C'est lui qui est visible dans l'interface. Par exemple, "Mon projet pour les nuls".
51

  
52
L'identifiant est soumis aux contraintes suivantes :
53

  
54
- Longueur comprise entre 1 et 100 caractères
55
- Seuls les lettres minuscules (a-z), chiffres, tiret et souligné sont autorisés
56
- Une fois sauvegardé, l'identifiant ne pourra plus être modifié (il sert comme identifiant dans la base de données).
57

  
58
L'utilisateur ayant fait la demande d'ouverture de projet est désigné comme *manager* du projet et reçoit un mail de confirmation. Il peut ensuite ajouter des utilisateurs en tant que membres du projet. 
59

  
60
Pour cela, il faut se rendre sur la page *Configuration*, puis *Membres*. Il appartient au manager de choisir le rôle des membres ainsi ajoutés.
61

  
62
Pour plus d'information sur la configuration du projet, se référer à [cette page](http://www.redmine.org/projects/redmine/wiki/RedmineProjectSettings) de la documentation Redmine.
63

  
64

  
65

  
66
# Utilisation d'un dépôt Subversion (SVN)
67

  
68
## Récupération initiale du dépôt
69

  
70
Un membre *developper* d'un projet accède au dépôt de la façon suivante :
71

  
72
    svn --username $USER checkout http://forge.cbp.ens-lyon.fr/svn/$PROJECT_ID
73

  
74
**Note**: $USER est le login de l'utilisateur. Il doit être membre du projet si le projet est privé. $PROJECT_ID est l'identifiant du projet.
75

  
76
Voici une commande pour créer l'archive subversion originelle à partir d'un répertoire existant :
77

  
78
    svn --username $USER import <Mon répertoire>/ https://forge.cbp.ens-lyon.fr/svn/$PROJECT_ID/ -m 'Importation de la version originelle'
79

  
80

  
81
## Envoi d'un mail lors de modification dans un dépôt SVN
82

  
83
Il est possible qu'un mail soit envoyé à chaque membre d'un projet lors d'un commit dans le dépôt SVN. Pour activer cette fonctionnalité, en faire la demande lors de l'ouverture du projet ou ultérieurement.
84

  
85
## Utilisation de SVN (lorsqu'on connait CVS)
86

  
87
Les améliorations les plus importantes de SVN par rapport à CVS sont les suivantes :
88

  
89
- Déplacer / Renommer / Supprimer les fichiers en les conservant dans l'historique
90
- Support transparent des fichiers binaires
91
- Modifications appliquées par projet et non plus par fichier
92
- Gestion des trunk/branches/tags : Le répertoire trunk contient la version courante du projet, branches contient les "forks" éventuels du projet, tags contient des versions "gelées" du projet (release, etc.)
93

  
94

  
95
Les commandes usuelles :
96

  
97
Commande        Fonction
98
--------------  ------------------------------
99
`svn checkout`  Rapatrie un dépôt
100
`svn commit`    Applique les modifications locales
101
`svn diff`      Montre les modifications entre deux révisions dans le projet
102
`svn update`    Récupère les dernières modifications d'un projet
103
`svn mv/rm/cp`  Déplace/Supprime/Copie un fichier
104
`svn status`    Affiche le status des modifications en cours
105
`svn revert`    Retourne à une version précédente d'un fichier
106

  
107
## Plus d'information
108

  
109
-   La page de documentation Redmine sur les [dépôts](http://www.redmine.org/projects/redmine/wiki/RedmineRepository).
110
-   La page Wikipedia sur [Subversion](http://fr.wikipedia.org/wiki/Apache_Subversion)
111

  
112

  
113
# Utilisation d'un dépôt Git
114

  
115
## Initialisation du dépôt
116

  
117
Lorsque un projet utilisant un dépôt Git à été validé, un des membres *developer* ou *manager* du projet doit activer ce dépôt en faisant le commit initial:
118

  
119
    GIT_SSL_NO_VERIFY=true git clone https://$USERNAME@forge.cbp.ens-lyon.fr/git/$PROJECT_ID
120

  
121
    #Ou en HTTP
122
    #git clone http://$USERNAME@forge.cbp.ens-lyon.fr/git/$PROJECT_ID
123

  
124
    cd $PROJECT_ID
125
    git add .
126
    git commit -m "Repository creation" --allow-empty
127
    GIT_SSL_NO_VERIFY=true git push origin master
128

  
129

  
130
## Accès au dépôt Git
131

  
132
1.    Depuis la station d'un *developer* (ou d'un *reporter* en lecture seule), en HTTPS
133

  
134
    - Clonage du dépôt
135

  
136
            GIT_SSL_NO_VERIFY=true git clone https://$USERNAME@forge.cbp.ens-lyon.fr/git/$PROJECT_ID
137

  
138
    - Désactivation de la vérification du certificat SSL pour de bon
139

  
140
            git config  --add http.sslVerify false
141

  
142
    - Ensuite, utilisation usuelle de git
143

  
144
            git pull
145
            #modifications
146
            git add <fichiers modifiés>
147
            git commit
148
            git push
149

  
150
2.    Depuis la station d'un *developer* (ou d'un *reporter* en lecture seule), en HTTP
151

  
152
    - Clonage du dépôt
153

  
154
            git clone http://$USERNAME@forge.cbp.ens-lyon.fr/git/$PROJECT_ID
155

  
156
    - Ensuite, utilisation usuelle de git
157

  
158
            git pull
159
            #modifications
160
            git add <fichiers modifiés>
161
            git commit
162
            git push
163

  
164
3.    En accès anonyme, uniquement si l'option *Public* du projet à été activée.
165

  
166
    - Clonage du dépôt
167

  
168
            git clone http://forge.cbp.ens-lyon.fr/git/$PROJECT_ID
169

  
170
    - Ensuite, utilisation usuelle de git
171

  
172
            git pull
173
            #modifications
174
            git add <fichiers modifiés>
175
            git commit
176
            #git push sera rejeté
177

  
178

  
179
## Plus d'information
180

  
181
-   La page de documentation Redmine sur les [dépôts](http://www.redmine.org/projects/redmine/wiki/RedmineRepository).
182
-   La page Wikipedia sur [Git](https://fr.wikipedia.org/wiki/Git)
183

  
184

  
185

  
186
# Wiki
187

  
188
Le wiki est certainement la partie la plus importante du projet, point de concentration de tous les documents électroniques directement moissonnables par le moteur de recherche intégré.
189

  
190
Pour le Wiki, [formatage de base](https://forge.cbp.ens-lyon.fr/redmine/help/wiki_syntax.html) et [formatage étendu](https://forge.cbp.ens-lyon.fr/redmine/help/wiki_syntax_detailed.html) fournissent tout ce qu'il faut pour bien formater (la syntaxe utilisée est [TexTile](http://textile.thresholdstate.com/)).
191

  
192
Il existe la gestion de versions pour les Wiki.
193

  
194

  
195
## Intégration de pages HTML statiques
196

  
197
Il est possible d'intégrer des pages HTML statiques au wiki grâce au plugin Redmine [Wiki HTML](https://github.com/mexitek/redmine_wiki_html_util).
198

  
199
Pour cela, il faut intégrer le code HTML de la page à intégrer à l'intérieur des balises suivantes :
200

  
201
    {{html(
202
    .....
203
    )}}
204

  
205
Le style CSS appliqué à la page hérite de celui du Wiki. Pour supprimer ce style, on peut utiliser la macro suivante (qui supprime la classe wiki des balises div):
206

  
207
    {{html(<script>var divs = document.getElementsByTagName('div'); for (var i = 0, c = divs.length ; i < c ; i++) {if (divs[i].className=='wiki wiki-page') {divs[i].className='';};}</script>)}}
208

  
209

  
210
# Demandes Redmine
211

  
212
Les *demandes* sont utilisées dans les projets Redmine pour permettre aux utilisateurs d'un projet de signaler des problèmes (*Bug*), de demander de l'aide (*Support*), etc, via l'ouverture de *tickets*.
213

  
214
Il est possible pour les utilisateurs membres d'un projet de recevoir un mail d'alerte lors de la création ou la modification d'un *ticket* (par défaut, uniquement pour ceux *observées*).
215

  
216
Pour plus d'information, ce référer à la documentation Redmine sur les [demandes](www.redmine.org/projects/redmine/wiki/RedmineIssues)
217

  
218

  
219
# Utilisation de Webdav
220

  
221
Webdav permet l'accès à distance aux *Fichiers*, aux *Documents* et au contenu d'un dépôt Subversion d'un fichier.
222

  
223
## Configuration du projet pour l'activation de Webdav
224

  
225
1.    Activer le module Webdav :
226
    -   Depuis l'interface de Redmine aller dans Projet, Configuration, Modules, Activer Webdav, Sauvegarder.
227

  
228
2.    Configurer le module :
229
    -   Depuis l'interface de Redmine aller dans Projet, Configuration, Webdav.
230
    -   Activer ou désactiver Fichiers/Documents/Dépôts au besoin. L'accès au dépôt ne fonctionne que pour un dépôt SVN hébergé sur le serveur.
231
    -   Attention à désactiver Dépôt exclusif pour permettre l'accès aux Fichiers et Documents
232

  
233

  
234
## Accès Webdav
235

  
236
Le partage Webdav est accessible à l'URL <http://forge.cbp/redmine/webdav/$PROJECT_ID> (sous nautilus, on peut faire Ctrl+L et entrer `dav://forge.cbp/redmine/webdav/$PROJECT_ID` pour créer un point de montage). L'accès au partage d'un projet à non membre est possible si le projet est public.
237

  
238
Les permissions de lecture / écriture sont respectées (écriture pour *developer* ou *manager* uniquement).

Formats disponibles : Unified diff