root / user_guide.md @ 2
Historique | Voir | Annoter | Télécharger (10,32 ko)
1 |
% Documentation Utilisateur de la Forge CBP |
---|---|
2 |
% Forge du Centre Blaise Pascal |
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). |