Index by title

Redmine 0.7

Main features for the 0.7 release:

Automating repository creation

Automating repository creationOverviewWarningsCommand line argumentsQuestion you should answer before going furtherAutomating repository creation to authenticate with apache/webdav and mod_perlWeb Service and Security

Overview

As of version 0.5.0, Redmine is able to handle Subversion repository creation. This is done by reposman.rb a script found in extra/svn/. With a recent version of Redmine (0.6.0 or re. 860 and later), reposman.rb can register the new repository in Redmine for you and set the owner of repository to who you want. If you have an older version, you will have to register repositories by yourself.

Projects are retrieved from Redmine using a SOAP web service. This web service is disabled by default in Redmine. To enable it, go to « Administration -> Settings » and check Enable WS for repository management.

Before going further, we need to choose some names, I will use my.redmine.host as the redmine hostname and my.svn.server as the svn server... You must create the directory where you want to put all your repositories, the owner must be root. I will use /var/svn :

mkdir /var/svn
chown root:root /var/svn
chmod 0750 /var/svn

We must also choose the directory apache will use to serve repositories to users, I choose /svn, so repository URL will look like http://my.svn.server/svn/PROJECTID/ and a last one, the directory apache will use for Redmine browsing, I will use /svn-private/.

And eventually, you need to know the name of apache user, as it's www-data on debian/ubuntu. I will use this one.

Warnings

Notice that reposman.rb before re. 916 has a right problem. You don't need to update redmine but just reposman.rb

The Perl reposman version is deprecated for new installation as it can't register and set the owner.

Command line arguments

It takes 2 mandatory arguments:

And two optional arguments (added in re. 860):

The Perl reposman version is deprecated for new installation as it
can't register and set the owner.

Question you should answer before going further

If Redmine and your svn repositories are on the same server, you may use the file:/// protocol of svn to browse them, but even if it seems a good idea, if later you want to move repositories on another server, you will have a problem because you can't change repository path in redmine for now.

The best way I can think of now is to do as if repositories and redmine are already on two different servers and using network subversion to allow Redmine browsing.

If you want to use local browsing (the file:/// protocol), use --url file:///var/svn/ instead of.

Automating repository creation to authenticate with apache/webdav and mod_perl

Before going further, we will check that reposman find the Redmine Web Service. Do this as an unprivileged user that can't write in /var/svn :

ruby reposman.rb --redmine my.redmine.host --svn-dir /var/svn --owner www-data --url http://my.svn.server/svn-private/ --verbose
querying Redmine for projects...
retrieved 2 projects
treating project myproject
svnadmin: Repository creation failed
...

It's normal the creation failed, you have no right, but the good point is that reposman find the Web Service and projects.

If this doesn't work, make sure you have check the Enable WS for repository management option.

Now that you know everything is ok, you just need to invoke resposman.rb as root with the right options :

  reposman.rb --redmine my.redmine.host --svn-dir /var/svn --owner www-data --url http://svn.server/svn-private/

Be careful with the --url option, you can't change it if you change your thought after.

You can now add this line in your crontab :

cat /etc/cron.d/redmine
10 * * * * root ruby reposman.rb --redmine my.redmine.host --svn-dir /var/svn --owner www-data --url http://my.svn.server/svn-private/ >> /var/log/reposman.log

It's allmost done for this part.

Web Service and Security

For the moment, the WS is open to everybody once actived and you surely don't want that someone register repository's project for you. You can block access to the WS with apache (if you don't use apache, I let you do your homework...) with the Location apache directive like this :

   <Location /sys>
      Order allow,deny
      Allow from ip.of.my.svn.server
   </Location>

So if you are using apache and mongrel, you will have something like that :

<VirtualHost *:80>
   ServerName redmine.my.domain
   ServerAdmin webmaster@localhost

   <Location /sys>
      Order allow,deny
      Allow from ip.of.my.svn.server
   </Location>

   ProxyPass / http://localhost:3000/
   ProxyPassReverse / http://localhost:3000/
</VirtualHost>

Changelog

v0.7.1 (2008-05-04)

v0.7.0 (2008-04-28)

v0.7.0 RC1 (2008-03-29)

v0.6.4 (2008-03-12)

v0.6.3 (2007-12-18)

v0.6.2 (2007-12-16)

v0.6.1 (2007-12-10)

v0.6.0 (2007-11-04)

v0.5.1 (2007-07-15)

v0.5.0 (2007-04-11)

v0.4.2 (2007-02-18)

v0.4.1 (2007-01-03)

v0.4.0 (2007-01-02)

v0.3.0 (2006-10-08)

v0.2.2 (2006-07-12)

v0.2.1 (2006-07-09)

v0.1.0 (2006-06-25)


Checking out Redmine

Before checkouting Redmine, you have to decide what are your needs:

  1. Latest stable version -> The latest well-tested version (recommended for production)
  2. Bleeding edge version -> All the cool new features! But can be broken some days (very rare)
  3. Older version -> You need to use a specific version for firm-policy things... Why not.

For 1, it's currently the 0.6.3, so checkout this url: http://redmine.rubyforge.org/svn/tags/0.6.3/
For 2, the trunk is at this URL: http://redmine.rubyforge.org/svn/trunk
For 3, choose the version you need from this url: http://redmine.rubyforge.org/svn/tags/


Download

Latest stable release 0.7.1 (2008-05-04)

Redmine releases can be found at RubyForge.
See the Changelog for details and RedmineInstall for installation instructions.

Latest source code

You can get the latest source code of Redmine from the Subversion repository hosted at Rubyforge. The repository URL is:

http://redmine.rubyforge.org/svn

This is the prefered way to get Redmine if you want to benefit from the latest improvements. By using the SVN repository you can also upgrade more easily.

Development

You can checkout the latest development source from the trunk with one of the following commands:

svn co http://redmine.rubyforge.org/svn/trunk redmine
svn co svn://rubyforge.org/var/svn/redmine/trunk redmine

0.7 Stable

You can checkout the latest stable source with one of the following commands:

svn co http://redmine.rubyforge.org/svn/branches/0.7-stable redmine-0.7
svn co svn://rubyforge.org/var/svn/redmine/branches/0.7-stable redmine-0.7

It will create a directory named redmine-0.7 and you'll be able to update your Redmine copy using svn update in this directory.

Troubleshooting

If you get this error when trying to checkout the source:

"PROPFIND 200 OK" error

Please contact your network administrator and ask him to enable WebDAV extension in your proxy.


Frequently Asked Questions

Frequently Asked QuestionsInstalling and Running RedmineWhen I start the application, I get this error "in 'gem_original_require': no such file to load -- initializer (LoadError)"When I start the application, I get this error message: "cannot connect to mysql: No such file or directory - /tmp/mysql.sock"The application seems to work fine but some pages (eg. login form) have no content.The application freeze after a long time of inactivity.I upgraded Rails to 2.0, but Redmine doesn't work anymore!Issue trackingI've created a new issue status but I can't use it, it doesn't show up in the status drop-down list.How does "Related issues" work?RepositoriesCommits don't show up in the activity until I click on 'Repository'I can't browse my svn repository through redmineRepository statistics doesn't show upPerformanceWhen I create a new issue, Redmine freeze during one minute.MiscalenousAll times are off by 1 hour after the daylight savings switched

Installing and Running Redmine

When I start the application, I get this error "in 'gem_original_require': no such file to load -- initializer (LoadError)"

Make sure Ruby on Rails is properly installed on your machine.

When I start the application, I get this error message: "cannot connect to mysql: No such file or directory - /tmp/mysql.sock"

You have to specify the socket location in config/database.yml.
See http://dev.rubyonrails.org/ticket/200.

The application seems to work fine but some pages (eg. login form) have no content.

You're running Rails 1.1.x but Redmine requires 1.2.6.
Upgrade Rails (if you're using gem package system, run the command gem update as root/administrator).

The application freeze after a long time of inactivity.

There's a bug in ruby/mysql adapter < 2.7.3 that leads to loose the database connection. Please update your adapter.
You can see thread at: http://rubyforge.org/forum/message.php?msg_id=25951.

I upgraded Rails to 2.0, but Redmine doesn't work anymore!

Redmine 0.6.3 is Rails 2.0 compatible, but prior versions are not.

The best solution is to upgrade Redmine to the latest version. But if you really want to use Redmine 0.6.0 on a box running Rails 2.0, please freeze your Rails version for Redmine (it won't affect your other Rails applications) by typing this command from your Redmine directory:

rake rails:freeze:edge TAG=rel_1-2-6

Don't forget to restart your server.

Issue tracking

I've created a new issue status but I can't use it, it doesn't show up in the status drop-down list.

Once you've created a new issue status, you need to include it in the workflow.

Say you have created a status named 'In progress' and you want the developers to be able to change bugs from 'New' to 'In progress'.
Go to "Admin -> Issue tracking -> Workflow", select 'Bug' and 'Developer' then click edit.
You now see all the transitions allowed for developers on bugs. Check the 'New' -> 'In progress' checkbox and save.

See Workflow setup.

How does "Related issues" work?

Using Issue #100 as the one you set the relationship and Issue #101 as the "related to"

Repositories

Commits don't show up in the activity until I click on 'Repository'

By default, Redmine fetches the new commits from the repository only when you browse it.

If you want the commits to be retrieved periodically by Redmine in the background for all your repositories, uncheck 'Autofetch commits' setting and add a cron that runs (with appropriate environment):

ruby script/runner "Repository.fetch_changesets" -e production

I can't browse my svn repository through redmine

Check the following:

If you're accessing the repository over HTTPS:

The initial import of a subversion repository over https requires that the ssl certificate fingerprint be manually validated and stored in a config-dir accessible by the user running the web server. It is recommended that a directory local to the redmine application root be provided, either as a default (./svn/.subversion) or as a provided parameter in the repository settings for subversion.

The work around for the certificate acceptance issue is to manually checkout anything from the svn server specifying the local config-dir and accepting the certificate permanently.
Example:

$ svn --config-dir ./svn/.subversion co https://svn.mydomain.com/project/trunk delete-me

Error validating server certificate for 'https://svn.mydomain.com:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
- The certificate hostname does not match.
- The certificate has expired.
Certificate information:
- Hostname: svn.mydomain.com
- Valid: from Apr 8 12:00:00 2006 GMT until Sep 24 12:00:00 2010 GMT
- Issuer: mydomain.com, vrsource.org, Geneva, UN
- Fingerprint: 01:27:d9:6a:b8:db:63:f3:24:e3:41:c8:15:0a:f8:93:f6:7c:0f:11
(R)eject, accept (t)emporarily or accept (p)ermanently? p

Repository statistics doesn't show up

There's a bug in rexml 3.1.7 provided with ruby 1.8.6.
In ruby/1.8/rexml/document.rb (line 186), change: if transitive to if trans then restart the app.

See http://www.germane-software.com/projects/rexml/ticket/115 for details.

Performance

When I create a new issue, Redmine freeze during one minute.

You have to configure email notification, or desactivate it. Please turn off email notification feature if you don't use it. In config/environment.rb replace the line

config.action_mailer.perform_deliveries = true

to

config.action_mailer.perform_deliveries = false

and restart redmine.

Miscalenous

All times are off by 1 hour after the daylight savings switched

Rails builtin time zone implementation doesn't handle DST. You have to install TZInfo.
To do so, run the following from your Redmine directory:

ruby script/plugin install tzinfo_timezone

Main features

Multiple projects support

Flexible role based access control

Flexible issue tracking system

Gantt chart and calendar

Time tracking functionality

Custom fields

News, documents & files management

Per project wiki and forums

Repository browser and diff viewer

Feeds & email notifications

Multiple LDAP authentication support

User self-registration support

Multilanguage support

Thanks to many contributors, Redmine is yet available in the following languages:

Multiple databases support

Feature requests

See the list of requested features.


Téléchargement

Dernière version stable 0.7.0 (2008-04-28)

Retrouvez les versions Redmine sur RubyForge.
Voir le Changelog (en anglais) pour les détails et frRedmineInstall pour les instructions d'installation.

Dernier code source

Vosu pouvez obtenir le dernier code source de Redmine depuis le dépôt Subversion hébergé sur Rubyforge. L'URL du dépôt est:

http://redmine.rubyforge.org/svn

C'est la meilleure méthode pour obtenir Redmine si vous voulez bénéficier des dernières améliorations. En utilisant le dépôt SVN vous pouvez aussi mettre à jour plus facilement.

Développement

Vous pouvez faire un checkout des dernières sources en développement depuis le tron avec l'une des commandes suivantes:

svn co http://redmine.rubyforge.org/svn/trunk redmine
svn co svn://rubyforge.org/var/svn/redmine/trunk redmine

0.7 Stable

Vous pouvez faire un checkout des dernières sources stables avec l'une des commandes suivantes:

svn co http://redmine.rubyforge.org/svn/branches/0.7-stable redmine-0.7
svn co svn://rubyforge.org/var/svn/redmine/branches/0.7-stable redmine-0.7

Ceci créera un répertoire nommé redmine-0.7 et vous pourrez mettre à jour votre copie de Redmine en utilisant svn update dans ce répertoire.

Dépannage

Si vous avez cette erreur en essayant de faire un checkout des sources:

"PROPFIND 200 OK" error

SVP contactez votre administrateur réseau et demandez-lui d'autoriser l'extension WebDAV dans votre proxy.


Redmine guide

Guide d'installation

Guide de l'administrateur

Guide de l'utilisateur

Guide du développeur

Voir également: formalisme Wiki


Comptes

Mon compte

Cet écran vous permet de modifier les paramètres de votre compte : prénom, nom, adresse de messagerie, langue.

Notifications par mail

Si Notifications par mail est coché, vous recevrez des notifications pour tout événement se produisant sur les projets auxquels vous appartenez (demande ajoutée ou modifiée, nouveaux documents...).

Si la case est décochée, vous recevrez seulement les notifications à propos des demandes vous concernant (auteur ou assigné à) et à propos des éléments que vous avez placés en surveillance (cad. demandes, forums).

Mot de passe

Pour modifier votre mot de passe, tapez votre ancien mot de passe et votre nouveau mot de passe deux fois. La longueur d'un mot de passe doit être comprise entre 4 et 12 caractères.

Si votre compte utilise un moyen d'authentification externe (LDAP), vous ne pouvez pas changer votre mot de passe dans Redmine.

Ma page

Cette page vous permet d'afficher plusieurs informations à propos de vos projets.

Pour personnaliser votre page, cliquez sur Personnaliser cette page. Vous pouvez alors choisir les informations à afficher et l'endroit où elle le sont.

Mot de passe perdu

Si vous oubliez votre mot de passe, une procédure vous permet d'en choisir un nouveau.

Sur l'écran d'authentification, cliquez sur Mot de passe perdu. Entrez votre adresse de messagerie et validez le formulaire. Un message vous est alors envoyé. Il contient un lien vous permettant de modifier votre mot de passe.

Veuillez noter que cette fonctionnalité peut être désactivée par l'administrateur. De même, si votre compte utilise un moyen d'authentification externe (LDAP), cette procédure n'est pas disponible.

S'enregistrer.

En vous enregistrant, vous pouvez obtenir un compte sans intervention de l'administrateur.

Si l'écran d'authentification, cliquez sur S'enregistrer. Complétez le formulaire et validez-le. Un message vous est envoyé. Pour activer votre compte, suivez le lien contenu dans ce message.

Veuillez noter que cette fonctionnalité peut être désactivée par l'administrateur.


Champs personnalisés

Les champs personnalisés vous permettent d'ajouter des informations additionnelles aux projets, demandes ou utilisateurs. Un champ pseronnalisé peut adopter l'un des types suivants :

Des règles de validation peuvent être définies pour chaque champ:

Exemples:

^\[A-Z]{4}\d+$ : 4 lettres majuscule suivies par un ou plusieurs chiffres
^[^0-9]*$ : caractères seuls - pas de chiffres

Champs pour les projets

Champs pour les demandes

Champs pour les utilisateurs


Installer Redmine

Installer RedminePrérequisInstallationConfiguration du serveur SMTPSauvegarde

Prérequis

Optionnel:

Bases de données supportées:

Installation

1. Téléchargez et extrayez l'archive ou faites un checkout de Redmine.

2. Créez une base de données vide nommée par exemple redmine.

Pour MySQL:

create database redmine character set utf8;

3. Coiez config/database.yml.example dans config/database.yml et éditez ce fichier pour configurer vos paramètres de base dans l'environnement "production".

Exemple pour une base de données MySQL:

production:
adapter: mysql
database: redmine
host: localhost
username: bduser
password: bdpasswd

4. Créez la structure de base en lançant la commande suivante depuis le répertoire racine de l'application:

rake db:migrate RAILS_ENV="production"

Ceci va créer les tables et le compte administrateur.

5. Insérez les données de la configuration par défaut dans la base en lançant la commande suivante:

rake redmine:load_default_data RAILS_ENV="production"

Cette étape est optionnelle mais fortement recommandée, sauf si vous définissez votre propre configuration depuis rien. Elle va charger les rôles par défaut, les trackers, statuts, workflows et énumérations.

6. Testez l'installation en lançant le serveur web WEBrick:

ruby script/server -e production

Une fois WEBrick démarré, dirigez votre navigateur sur http://localhost:3000/. Vous devriez voir maintenant la page de bienvenue de l'application.

7. Utilisez le compte administrateur par défaut pour vous connecter:

8. Vous pouvez aller sur Administration pour modifier la configuration de l'application.

Configuration du serveur SMTP

Dans config/environment.rb, vous pouvez configurer les paramètres de votre serveur SMTP:

N'oubliez pas de redémarrer l'application après toute modification.

Sauvegarde

Les sauvegardes Redmine devraient inclure:

Voici un simple script shell pouvant être utilisé pour des sauvegardes quotidiennes (à supposer que vous utilisez une base mysql):

# Base
/usr/bin/mysqldump -u <utilisateur> -p <motdepasse> <base_redmine> | gzip > /chemin/vers/sauvegarde/db/redmine_`date +%y_%m_%d`.gz

# Pièces jointes
rsync -a /chemin/vers/redmine/files /chemin/vers/sauvegarde/files

La liste de demandes

Appliquer et sauvegarder des filtres

La liste de demandes présente par défaut les demandes ouvertes.
Les demandes standardes et personnalisées peuvent être utilisées pour bâtir une requête personnalisée. une fois les filtres configurés, cliquez sur pour rafraîchir la liste de demandes. Cliquez sur pour supprimer les filtres.

Les requêtes personnalisées peuvent être sauvegardées en cliquant sur .
Un formulaire vous permet de donner un nom à la requête, et vous permet de sélectionner les colonnes que vous souhaitez voir appraître dans la liste de demandes (les champs standards et personnalisés peuvent être affichés). Cocher l'attribut public rend la requête visible pour tout le monde, sinon vous seul pourrez la voir.

Une fois sauvegardées, la requête est répertoriée dans la marge à droite.

Menu rapide

Un menu contextuel apparaît avec un clic droit (Ctrl + droit pour les utilisateurs d'Opera) sur une demande de la liste des demandes. Ce menu offre plusieurs raccourcis pour modifier, prioriser, assigner à, copier, déplacer ou supprimer rapidement la demande.

Editer les demandes

Dans la liste des demandes, vous pouvez modifier/déplacer/supprimer simultanément plusieurs demandes en les sélectionnant et en faisant ensuite un clic droit sur la sélection. Les demande peuvent être sélectionnées soit en utilisant les cases à cocher, ou en cliquant sur chaque ligne tout en maintenant la touche Ctrl ou Shift enfoncée.
Vous pouvez également utiliser le symbole coche situé en haut à gauche de la liste pour sélectionner/désélectionner toutes les demandes.


Système de suivi de demandes

Trackers

Les trackers sont différents types de demandes. Pour chaque tracker, vous pouvez définir un cheminement différent ( workflow ).

Lorsque vous créez un nouveau tracker, vous devez définir son workflow pour l'utiliser correctement. Notez que vous pouvez copier
le workflow d'un tracker existant lorsque vous en créez un (poru cela, sélectionnez le tracker dans la liste déroulante 'Copier le workflow de' de l'écran 'Nouveau tracker').

Statuts des demandes

Workflow

Le workflow vous permet de définir les changements de statuts que les membres d'un projet ont le droit de faire sur les demandes, selon leur type.

Sur l'écran de paramétrage de workflow, choisissez le rôle et le tracker pour lesquels vous souhaitez éditer le workflow, puis cliquez sur 'Editer'. L'écran vous permet de sélectionner les modifications autorisées pour le rôle et le tracker choisis. Les options de la colonne Statut actuel indiquent le statut initial d'une demande. Les colonnes "Nouveaux statuts autorisés" déterminent les statuts pouvant être appliqués.

Note : pour donner à un rôle l'autorisation de modifier le statut d'une demande existante, vous devez lui donner la permission 'Change issue status' (voir Rôles et permissions).

Dans l'exemple ci-dessus, les bogues avec le statut New peuvent se voir attribuer les statuts Assigned ou Resolved par le rôle Developper. Le statut de tous les autres bogues ne peut être modifié par le Developer.


Authentification LDAP

Redmine supporte nativement l'authentification LDAP en utilisant un ou plusieurs annuaires LDAP.

Déclarer le LDAP

Allez dans Administration -> Configuration -> Authentification -> Authentification LDAP et cliquez sur Nouveau mode d'authentification.

Entrez les informations suivantes:

Les utilisateurs Redmine devraient maintenant être capable de s'authentifier en utilisant leur nom d'utilisateur et mot de passe LDAP si leurs comptes sont paramétrés pour utiliser LDAP pour l'authentification.

Pour tester ceci, créez un utilisateur Redmine avec un compte correspondant à son compte LDAP, sélectionnez le LDAP dans la liste déroulante Mode d'authentification (ce champ n'est visible dans l'écran des comptes que si un LDAP est déclaré) et laissez son mot de passe vide. Essayez de vous connecter à Redmine en utilisant le compte et le mot de passe LDAP.

Création des utilisateurs à la volée

En cochant Création des utilisateurs à la volée, tout utilisateur LDAP verra son compte Redmine créé automatiquement lors de sa première connection à Redmine.
Pour cela, vous devez préciser les attributs LDAP (nom, prénom, email) qui seront utilisés pour créer les comptes Redmine.

Voici un exemple typique utilisant Active Directory:

Nom          = My Directory
Hôte         = host.domain.org
Port         = 389
LDAPS        = non
Compte       = MonDomaine\NomUtilisateur
Mot de passe = <motdepasse>
Base DN      = CN=users,DC=host,DC=domain,DC=org

Création des utilisateurs à la volée = oui
Attributs
  Identifiant = sAMAccountName
  Prénom      = givenName
  Nom         = sN
  Email       = mail

notez que les attributs LDAP sont sensibles à la casse

Dépannage

Si vous souhaitez utiliser la création d'utilisateurs à la volée, vérifiez que Redmine peut récupérer du LDAP toutes les informations requises pour créer un utilisateur valide.
Par exemple, la création d'utilisateurs à la volée ne fonctionnera pas si vous n'avez pas d'adresses mail valides dans votre annuaire (vous obtiendrez un message d'erreur 'Invalid username/password' en essayant de vous connecter).

De même, vérifiez que vous n'avez aucun champ personnalisé marqué obligatoire dans les comptes utilisateurs. Ces champs personnalisés empêcheraient la création à la volée de comptes utilisateurs.


Migrer depuis d'autres systèmes

Migrer depuis d'autres systèmesTracMantis

Trac

L'importateur Trac fait migrer:

Notes:

  1. Les mots de passe utilisateurs sont initialisés à trac
  2. Les identifiants de Tickets sont préservés s'il n'y a pas encore de ticket dans votre base Redmine.
  3. Les champs personnalisés sont tous créés en champ personnalisé de type texte dans Redmine

Vous avez besoin de sqlite-ruby gem (gem install sqlite-ruby) pour accéder à la base de données Trac.

Avant de commencer, vous avez besoin d'une base Redmine vierge avec les données par défaut chargées (requis). Voir Installation de Redmine.

Le script a été testé avec une base Trac 0.10 sqlite et devrait fonctionner avec une base 0.11.

1. Lancez la commande suivante, où test est votre environnement cible Redmine:

rake redmine:migrate_from_trac RAILS_ENV="test"

2. Le script vous demande les paramètres Trac:

Trac directory []: /var/trac/myproject
Trac database adapter (sqlite, sqlite3, mysql, postgresql) [sqlite]:
Database encoding [UTF-8]:
Target project identifier []: myproject

Trac directory est le répertoire racine de votre environnement Trac. Redmine va chercher db/trac.db dans ce répertoire (si vous choisissez une base sqlite/sqlite3) et va chercher le répertoire attachments.
Dans le cas d'une base Trac mysql ou postgresql, le script va vous demander les paramètres de connexion (hôte, nom de base, nom d'utilisateur et mot de passe).
L'identifiant de projet cible est l'identifiant du projet Redmine dans lequel les données seront chargées (le projet est créé s'il n'est pas trouvé).

4. Le script migre vos données:

Deleting data
Migrating components..............................
Migrating milestones..............
Migrating custom fields.......
Migrating tickets.................................
Migrating wiki...........

Components: 29/30
Milestones: 14/14
Tickets: 1275/1275
Ticket files: 106/106
Custom values: 4409/4409
Wiki edits: 102/102

Le script vous donne le nombre total de projets migrés.
Vous devriez voir maintenant un projet appelé Myproject dans Redmine avec vos données Trac chargées dans le projet.

Mantis

L'importateur Mantis migre:

Les mots de passe utilisateurs sont initialisés à "mantis".

La migration des fichiers associés au Bugs ne fonctionne que s'ils sont stockés dans la base de données Mantis (c'est le comportement par défaut de Mantis).

Le script a été testé avec différentes bases Mantis 1.0.x et devrait fonctionner avec toute version récente.

Avant de commencer, vous avez besoin d'une base Redmine vierge avec les données par défaut chargées (requis). Voir Installation de Redmine.

1. Lancez la commande suivante, où test est votre environnement cible Redmine:

rake redmine:migrate_from_mantis RAILS_ENV="test"

2. Le script vous demandes vos paramètres de base Mantis:

Please enter settings for your Mantis database
adapter [mysql]:
host [localhost]:
database [bugtracker]: mantis
username [root]:
password []:
encoding [UTF-8]:

Fournissez l'adaptateur, le nom d'hôte, le nom de base, le compte, le mot de passe et l'encodage de vore base Mantis, ou laissez les valeurs par défaut.

L'adaptateur peut être mysql (par défaut) ou postgresql.

3. Le script migre vos données:

Migrating users...............
Migrating projects.............
Migrating bugs........................................
Migrating news...
Migrating custom fields..

Users: 15/15
Projects: 13/13
Memberships: 10/10
Versions: 33/33
Categories: 4/4
Bugs: 180/180
Bug notes: 336/336
Bug files: 46/46
Bug relations: 11/11
Bug monitors: 8/8
News: 3/3
Custom fields: 2/2

Le script vous donne le nombre total d'objets migrés.


Gérer les projets

Liste des projets

Ajouter ou supprimer un projet

Voir Configuration d'un projet.


Configuration d'un projet

Propriétés

Modules

Cet écran vous permet de choisir les modules que vous voulez utiliser pour le projet. Lorsqu'un module est désactivé, il peut être réactivé avec toutes ses données.

Vous pouvez par exemple désactiver le module 'suivi des demandes' pour un projet donné. Les demandes existantes ne sont pas supprimées, vous y aurez accès si vous réactivez le module.

Membres

Cet écran vous permet de définir les membres du projet et leurs rôles. Un utilisateur ne peut avoir qu'un seul rôle dans un projet donné (mais des rôles différents dans les autres projets). Le rôle d'un membre définit les permissions qu'il a sur un projet.

Versions

Les versions de projets vous permettent de suivre et planifier les évolutions. Vous pouvez attribuer des demandes à des versions différentes, et visualiser sur la roadmap la liste des demandes assignées à chaque version.

Catégories de demandes

Les catégories de demandes vous permettent d'organiser les demandes. Les catégories peuvent par exemple correspondre à différents composants de votre projet.

Wiki

Chaque projet peut avoir son propre wiki. Pour l'activer, donnez un nom à la page de démarrage et cliquez sur 'Sauvegarder'.

Dépôt

Un dépôt de gestion de configuration logicielle (SCM) peut être associé à chaque projet. Une fois le dépôt configuré, vous pouvez le parcourir et consulter les changements. Les changements apparaîssent également sur la page Activité.

Forums

Chaque projet peut avoir un ou plusieurs forums de discussion.


Dépôts

Redmine supporte nativement l'intégration avec différents SCM: Subversion, CVS, Mercurial, Darcs, Git (as of r1236), et Bazaar (depuis r950).

notez que vous devrez installer les binaires appropriés sur votre hôte Redmine:

SCM Testé avec Commentaires
Subversion 1.3 & 1.4 1.3 ou plus requis
CVS 1.12.12 1.12 requis, ne fonctionne pas avec CVSNT
Mercurial 0.9.3
Bazaar 1.0.0.candidate.1
Darcs 1.0.7
Git 1.5.4.2 depuis r1236, prévu dans Redmine 0.7

Par exemple, si vous souhaitez accéder à un dépôt Subversion dans Redmine, vous devez installer les binaires svn sur l'hôte Redmine.

Lier un dépôt existant à un projet

Dans la configuration du projet, vérifiez que le module 'Dépôt' est activé et allez sur l'onglet 'Dépôt'.
Choisissez le SCM correspondant à votre dépôt et entrez le chemin ou l'URL de votre dépôt.

Important: Lorsque vous parcourez le dépôt pour la première fois, Redmine récupère la description de tous les commits existants et les stocke en base de données. Ceci est fait une seule fois par dépôt mais peut s'avérer très long (allant même jusqu'au time out) si votre dépôt a des centaines de commits.

Pour éviter cela, vous pouvez le faire hors ligne.
Après avoir déclaré votre dépôt dans Redmine, lancez la commande suivante:

ruby script/runner "Repository.fetch_changesets" -e production

Tous les commits seront récupérés dans la base de données de Redmine.

Dépôt Subversion

Les protocoles communs sont supportés (cad. http:, svn:, file:), entrez seulement l'URL de votre dépôt.

Exemple:

http://hote/chemin/vers/le/depot

Vous pouvez spécifier un nom d'utilisateur et un mot de passe si le dépôt requiert une authentification.

Note: si vous souhaitez accéder au dépôt en utilisant svn+ssh://, vous aurez à configurer svn+ssh pour le rendre non interactif.
Cela nécessite de configurer une paire de clefs publique/privée pour l'authentification ssh.

Dépôt CVS

Entrez:

Exemple:

:pserver:compte:motdepasse@hote:/chemin/vers/le/depot

Rôles et permissions

Les rôles vous permettent de définir les permissions que les membres ont sur un projet. Chaque membre d'un projet a un seul rôle pour le projet. Un utilisateur peut avoir différents rôles sur différents projets.

Vous pouvez créer de nouveaux rôles ou éditer ceux existants. Vous pouvez ne pouvez supprimer un rôle que si personne n'a ce rôle sur un projet.

Propriétés des rôles

Permissions

Vous pouvez, en éditant un rôle, définir ses permission en cochant/décochant les différentes actions.

Rôles systèmes

Il y a deux rôles systèmes dans Redmine : 'Non member' et 'Anonymous'. Ils sont utilisés en interne par Redmine et ne peuvent donc être supprimés.

Notez que ces permissions s'appliquent seulement aux projets publics puisqu'un utilisateur non membre d'un projet privé ne peut pas le voir.


Configuration de Redmine

Configuration de RedmineGénéralTitre de l'applicationTexte d'accueilThèmeLangue par défautFormat de dateTaille max des fichiersNom d'hôteProtocoleFormatage du texteCompression historique wikiLimite du contenu des flux RSSAuthentificationAuthentification obligatoireAutologinInscription des nouveaux utilisateursMot de passe perduSuivi des demandesAutoriser les relations entre demandes de différents projetsAfficher par défaut les demandes des sous-projets sur les projets principauxLimite export demandesColonnes affichées par défaut sur la liste des demandesNotifications par mailAdresse d'émissionDestinataire en copie cachée (cci)Pied-de-page des emailsDépôtsRécupération auto. des commitsActiver les WS pour la gestion des dépôtsEncodages des dépôtsRéférencement et résolution des demandes dans les commentaires de commits

Général

Titre de l'application

Titre apparaîssant à la une de l'application.

Texte d'accueil

Texte affiché sur la page d'aperçu de l'application. Ce texte peut contenir des balises HTML.

Thème

Cette option vous permet de choisir un thème personnalisé.
Redmine est fourni avec un thème alternatif, qui propose principalement la coloration de la liste des demandes en se basant sur les priorités des demandes.

Capture d'écran:

Les thèmes sont placés dans public/themes/. Vous pouvez en savoir davantage sur les thèmes.

Langue par défaut

La langue par défaut est choisie lorsque l'application ne peut déterminer la langue du navigateur de l'utilisateur. La langue par défaut est également utilisée pour l'envoi de messages à de multiples utilisateurs. Par défaut: English

Format de date

Vous permet de choisir la façon dont les dates sont affichées:

Par défaut: Basé sur la langue de l'utilisateur

Taille max des fichiers

La taille maximum des fichiers déposés (en kylo-bytes). Par défaut: 2048 (i.e. 2MB)

Nom d'hôte

Nom d'hôte de l'application. Ce nom est utilisé pour écrire les URLs dans les messages envoyés aux utilisateurs.

Protocole

Le protocole utilisé pour générer les liens dans les messages de notification. Par défaut: http

Formatage du texte

La méthode de formatage appliquée aux champs "description" des demandes, annonces, documents...

Compression historique wiki

Vous permet d'activer la compression du stockage de l'historique des wiki (réduit la taille de la base de données). par défaut: aucun

Limite du contenu des flux RSS

Nombre maximum d'enregistrements contenus dans les flux RSS. Par défaut: 15

Authentification

Authentification obligatoire

Si cette option est cochée, aucune page de l'application n'est accessible aux utilisateurs anonymes. Les utilisateurs doivent s'enregistrer pour accéder à l'application. Par défaut: Non.

Autologin

Cette option permet aux utilisateurs d'employer la fonctionnalité d'autologin. Par défaut: Désactivé

Inscription des nouveaux utilisateurs

Cette option vous permet d'activer/désactiver l'auto-enregistrement de nouveaux utilisateurs:

Mot de passe perdu

Si cette option est sélectionnée, la fonctionnalité de mot de passe perdu est disponible. Par défaut: Oui

Suivi des demandes

Autoriser les relations entre demandes de différents projets

Si coché, des relations entre demandes de différents projets peuvent être créées. Par défaut: Non

Afficher par défaut les demandes des sous-projets sur les projets principaux

Si coché, les demandes des sous-projets seront affichées par défaut dans la liste des demandes, dans le calendrier et le gantt du projet principal (Depuis r1198). Par défaut: Oui

Limite export demandes

Nombre maximum de demandes contenues dans les exports CSV et PDF. Par défaut: 500

Colonnes affichées par défaut sur la liste des demandes

Ce paramétrage vous permet de définir les colonnes affichées par défaut dans les listes de demande.
Seuls les champs personnalisés marqués "pour tous les projets" peuvent être choisis ici.

Notifications par mail

Adresse d'émission

L'adresse de messagerie utilisée dans le champ "From" des messages envoyés aux utilisateurs.

Destinataire en copie cachée (cci)

Si coché, les messages de notification seront envoyés en copie cachée. Par défaut: Oui

Pied-de-page des emails

Vous pouvez enter ici un texte qui sera ajouté aux messages envoyés par l'application.

Dépôts

Récupération auto. des commits

Si cette option est activée, l'application récupère automatiquement les nouvelles révisions lorsqu'un utilisateur consulte le dépôt.
Par défaut: Oui

Vous pouvez désactiver cette option et automatiser l'appel à Repository#fetch_changesets pour récupérer périodiquement en tâche de fond les révisions de tous les dépôts.
Exemple:

ruby script/runner "Repository.fetch_changesets" -e production

Activer les WS pour la gestion des dépôts

Cette option ne devrait être activée que si vous avez installé le script pour la création automatique de dépôts SVN. Par défaut: Non

Encodages des dépôts

Cette option vous permet de spécifier les encodages préférés des fichiers du dépôt (valeurs multiples autorisées séparées par des virgules). Ces encodages sont utilisés pour convertir le contenu des fichiers et des diff à UTF-8 pour qu'ils soient correctement affichés dans le navigateur.
Lorsque vous entrez plusieurs encodages, le premier encodage valide pour un contenu de fichier donné est utilisé.

Par exemple, pour les utilisateurs français, cette option peut être paramétrée à:

UTF-8, ISO 8859-15, CP1252

Pour les utilisateurs japonais:

ISO-2022-JP, EUC-JP, UTF-8, SHIF_JIS, WINDOWS-31J

Référencement et résolution des demandes dans les commentaires de commits

Lorsqu'ils sont récupérés des dépôts, les messages de commit sont analysés pour en déduire l'identifiant des demandes référencées ou corrigées.
Cette option vous permet de définir les mots-clefs pouvant être utilisés dans un message de commit pour référencer ou résoudre automatiquement une demande, et pour spécifier le statut à appliquer à la demande résolue.

Les mots-clefs par défaut sont:

Il n'y a pas de statut par défaut défini pour les demandes résolues. Vous devrez en spécifier un pour permettre la fermeture automatique de demandes. Si vous voulez référencer une demande sans utiliser de mots-clefs, entrez une seul étoile: * dans le paramètre Mots-clefs de résolution. Dans ce cas, tout identifiant de demande trouvé dans le message sera lié au changeset.

Example d'un message de commit utilisant les mots-clefs par défaut:

Ce commit refs #1, #2 et fixes #3

Ce message référencerait les demandes 1 et 2 et résoudrait automatiquement la demande 3.
Après un mot-clef, les identifiants de demandes peuvent être séparés par un espace, une virgule ou &.


Mise à jour

Mettre à jour depuis un checkout SVN

1. Allez dans le répertoire racine de Redmine et exécutez la commande suivante:

svn update

2. Migrez votre base (svp faites une sauvegarde de la base avant):

rake db:migrate RAILS_ENV="production"

3. Nettoyez le cache et les sessions existantes:

rake tmp:cache:clear
rake tmp:sessions:clear

4. Redémarrez l'application et allez dans "Administration -> Rôles & permissions" pour vérifier/paramétrer les permissions sur les nouvelles fonctionnalités, s'il y en a.

Mettre à jour depuis une version téléchargée

1. Décompresser la nouvelle archive du programme dans un nouveau répertoire.

2. Copiez vos paramètres de base config/database.yml dans le nouveau répertoire de configuration config.

3. Réentrez vos paramètres SMTP dans config/environment.rb mais ne remplacez pas ce fichier avec l'ancien.

4. Allez dans votre nouveau répertoire redmine décompressé, puis migrez votre base de données (svp faites une sauvegarde de la base avant de faire cela):

rake db:migrate RAILS_ENV="production"

5. Copiez le contenu du répertoire RAILS_ROOT/files dans votre nouvelle installation.

6. Démarrez l'application et allez dans "Administration -> Rôles & permissions" pour vérifier/paramétrer les permissions sur les nouvelles fonctionnalités, s'il y en a.


Gérer les utilisateurs

Liste des utilisateurs

Statuts des comptes:

Les boutons Verrouiller/Déverrouiller vous permettent de verrouiller/déverrouiller les comptes utilisateurs.

Ajouter ou éditer un utilisateur

Un utilisateur désigné administrateur bénéficie d'un accès illimité à l'application et à tous les projets.

En mode édition, laissez le champ Mot de passe vide pour conserver inchangé le mot de passe de l'utilisateur.


Formalisme Wiki

Formalisme WikiLiensLiens RedmineLiens externesFormatage de texteStyle de policeImages en ligneTitresParagraphesCitationsTable des matièresMacrosColoration syntaxique

Liens

Liens Redmine

Redmine permet les hyperliens entre demandes, changesets et pages wiki partout où le formalisme wiki est utilisé.

Liens wiki:

Vous pouvez aussi établir des liens vers les pages wiki d'autre projets:

Les liens wiki sont affichés en rouge lorsque la page n'existe pas encore, exemple: Page inexistante.

Liens vers d'autres ressources (0.7):

Echappement (0.7):

Liens externes

HTTP URLs et adresses de messagerie sont autoamtiquement convertis en liens cliquables:

http://www.redmine.org, untel@foo.bar

affiche: http://www.redmine.org, untel@foo.bar

Si vous voulez afficher un texte spécifique à la place de l'URL, vous pouvez utiliser la syntaxe textile standarde:

"site web Redmine":http://www.redmine.org

affiche: site web Redmine

Formatage de texte

Pour les choses du genre titres, gas, tableaux, listes, Redmine supporte la syntaxe Textile. Voir http://hobix.com/textile/ pour
information sur l'utilisation de ces fonctionnalités. Quelques exemples sont proposés ci-dessous, mais le moteur est capable de bien plus.

Style de police

* *gras*
* _italique_
* _*gras italique*_
* +souligné+
* -barré-

Affiche:

Images en ligne

Titres

h1. Titre
h2. Sous-titre
h3. Sous-titre

Paragraphes

p>. aligné à gauche
p=. centré

Ceci est un paragraphe centré.

Citations

Débutez le paragraphe avec bq.

bq. Rails est un framework complet pour développer des applications reposant sur une base de données,
en conformité avec le motif Modèle-Vue-Contrôleur.
Pour démarrer, vous avez seulement besoin d'une base de données et d'un serveur web.

Affiche:

Rails est un framework complet pour développer des applications reposant sur une base de données, en conformité avec le motif Modèle-Vue-Contrôleur.
Pour démarrer, vous avez seulement besoin d'une base de données et d'un serveur web.

Table des matières

{{toc}} => table des matières alignée à gauche
{{>toc}} => table des matières alignée à droite

Macros

Redmine propose d'emblée les macros suivantes:

hello_world

Sample macro.

include

Include a wiki page. Example:

{{include(Foo)}}

or to include a page of a specific project wiki:

{{include(projectname:Foo)}}
macro_list

Displays a list of all available macros, including description if available.

Coloration syntaxique

La coloration syntaxique repose sur CodeRay, une librairie rapide de coloration syntaxique écrite entièrement en Ruby. Elle supporte actuellement les langages c, html, javascript, rhtml, ruby, scheme, xml.

Vous pouvez mettre en valeur le code dans vos pages wiki en utilisant cette syntaxe:

<pre><code class="ruby">
  placez votre code ici.
</code></pre>

Exemple:

 1 # The Greeter class
 2 class Greeter
 3   def initialize(name)
 4     @name = name.capitalize
 5   end
 6 
 7   def salute
 8     puts "Hello #{@name