Créer un nouveau projet de développement avec Trac
Créer un nouveau groupe pour le projet
# addgroup <dev-my_project> # addgroup www-data <dev-my_project>
Pour chaque développeur
# addgroup <my_login> <dev-my_project>
Créer le répertoire du dépôt (le +ws met le SetGID sur le dossier afin que tous les utilisateurs puissent modifier le projet)
# mkdir /var/www/thefool/code.filyb.info/<my_project> # chgrp <dev-my_project> /var/www/thefool/code.filyb.info/<my_project> # chmod g+ws /var/www/thefool/code.filyb.info/<my_project>
Pour chaque développeur
$ mkdir ~<login>/code $ ln -s /var/www/thefool/code.filyb.info/<my_project> ~<login>/code/<my_project>
Créer le projet sous Trac
# trac-admin /var/lib/trac/<my_project> initenv
Répondre aux questions
Autoriser Trac à jouer avec ses fichiers
# chown -R www-data:www-data /var/lib/trac/<my_project>
Inclure le fichier de configuration globale : ajouter au fichier /var/lib/trac/<my_project>/conf/trac.ini
[inherit] file = /etc/trac/trac.ini
Création des dépôts :
Pour bazaar, création du dépôt sur le serveur
$ cd ~/code/<my_project>/ $ bzr init
Pour darcs, création du dépôt sur le serveur
$ cd ~/code/<my_project> $ darcs initialize --darcs-2
Ensuite, n'importe quel utilisateur du groupe <dev-my_project> pourra envoyer des fichier depuis son dépôt bazaar local
$ bzr checkout sftp://<login>@dev.filyb.info/~/code/<my_project>
Créer le groupe admin dans Trac
# trac-admin /var/lib/trac/<my_project>/ permission add admin WIKI_ADMIN permission add admin REPORT_ADMIN permission add admin MILESTONE_ADMIN permission add admin TICKET_ADMIN permission add admin TRAC_ADMIN
Ajouter le premier administrateur
permission add <my_login> admin
Annexe : téléchargement anonyme du code
Le code du dépôt bazaar peut être téléchargé anonymement par la commande suivante
$ bzr branch http://code.filyb.info/<my_project>
Annexe : gérer les composants du projet
# trac-admin /var/lib/trac/<my_project>/ component list component add <name> <owner> component rename <name> <newname> component remove <name> component chown <name> <owner>
Annexe : gérer les versions du projet
# trac-admin /var/lib/trac/<my_project>/ version list version add <name> [time] version rename <name> <newname> version time <name> <time> (time is "YYYY-MM-DD" or "now") version remove <name>