The Fool

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>