Travail collaboratif

Je vais décrire ici une présentation de la forge, “Redmine” avec son gestionnaire de dépôts, “GIT”.
Avec quelques tutos pour une utilisation basique.

Nouvelle forge :
https://ifforge.univ-grenoble-alpes.fr

Procédure

Pour bénéficier d'un accès à la Forge, vous avez deux solutions :

- Demander par le menu “S'enregistrer” sur ifforge.univ-grenoble-alpes.fr
Une demande nous parviens par mail et vous recevrez l'activation sur le mail fourni à l'inscription.

- Via un ticket GLPI:
https://ifmail.univ-grenoble-alpes.fr/glpi (Valider l’exception de sécurité)

En mettant votre Login AGALAN (ou UGA) avec votre Nom, Prénom
Un compte sera créé sur la forge en utilisant votre compte UGA (login/password AGALAN)
Une fois votre compte créé, vous pourrez vous logguer.
si vous voulez utiliser le dépôt GIT, il faudra ajouter un clé ssh.
Dans ce cas, bien préciser le nom donné à la clé SSH ..

Quelques tutos vous indiqueront la marche à suivre plus bas.

ATTENTION ! Ce compte s'appuie sur votre compte UGA, mais il est complètement indépendant.
Si vous changez le password ou autre, seul ce compte sur la forge sera impacté :

Il est possible d'ajouter des utilisateurs extérieurs au labo, pour cela passer obligatoirement par la procédure sur le GLPI !
Merci de précisez le projet, la durée (estimée) de la validité du compte. Il faudra en plus du Nom, Prénom, un login, un password (qu'il pourra changer), une clé .pub comme pour vous.
Une fois le compte créé, vous pourrez l'ajouter dans votre projet comme vous serez “manager”.

Présentation

Redmine est une application WEB permettant le travail collaboratif.
Nous avions déjà une Forge Redmine qui permettait a peu près les même fonctions.
L'ancienne forge utilisait Mercurial et SVN pour les dépôts, la nouvelle n'utilisera que GIT.

Redmine offre les fonctionnalités suivantes :

  • Multi-projets : il est possible de créer plusieurs projets en parallèle et de les gérer de manière indépendante
  • Contrôle flexible des accès des utilisateurs redmine : chaque compte utilisateur dispose d'un ou plusieurs rôle(s) (administrateur, accès restreint, utilisateur). L'administrateur attribue des droits spécifiques à chacun d'eux pour contrôler les accès de chacun
  • Système de tracking des demandes flexible : l'intégralité du suivi des demandes est personnalisable.
  • Graphique de Gantt et rapports personnalisés permettent de visualiser l'avancement des projets
  • Fil d'actualités, gestion documentaire et gestion de fichiers de suivi de projet
  • Flux d'informations et notifications par email
  • Gestion du savoir : un wiki permet de rédiger de la documentation technique par projet
  • Forum de discussion par projet
  • Time tracking / suivi des temps et des activités
  • Personnalisation des champs des demandes, des projets et des utilisateurs
  • Intégrations à SVN, CVS, Git, Mercurial, Bazaar et Darcs

La navigation dans Redmine online se fait simplement via un moteur de recherche et 13 onglets :

  • Le moteur de recherche permet de trouver des demandes (tickets), des documents de suivi de projet, des annonces, des wikis et tout autre contenu. Pour accéder directement à un ticket connu, il suffit de chercher “#” suivi du numéro de la demande
  • L'onglet Aperçu détaille la description et les responsables du projet
  • L'onglet Activité est un fil d'actualités à la manière de Facebook. Il permet de suivre l'évolution des tâches en cours
  • L'onglet Roadmap détaille pour chaque version du produit en développement la consommation des tâches et les éventuels retards
  • L'onglet Demandes est une liste de toutes les demandes. Cette liste est totalement personnalisable avec des tris, filtres et des champs personnalisés. Il est possible de créer autant de listes qu'on le souhaite et d'en partager certaines avec ses collaborateurs
  • L'onglet Nouvelle demande permet de créer un nouveau ticket. En plus des champs classiques (nom, description, pièces jointes, catégorie, tickets parents et tickets liés) il est possible d'ajouter autant de champs qu'on le souhaite dans l'onglet Configuration. On peut le considérer comme un outil de ticketing gratuit.
  • L'onglet dans Redmine Gantt est un diagramme de Gantt dynamique en fonction des filtres et tris mis en place
  • L'onglet Calendrier est un agenda des demandes en cours de traitement
  • L'onglet Documents est un espace de gestion documentaire. Il est possible d'y ajouter des documents stockés sur son ordinateur. Cette fonction est un outil d'appoint qui ne remplace pas un service comme Dropbox ou Google Drive
  • L'onglet Wiki est un espace de gestion du savoir très utile indexé dans la recherche de Redmine. Cette fonction est particulièrement utile pour rédiger de la documentation technique ou des bonnes pratiques à partager en interne
  • L'onglet Configuration permet de personnaliser tous les onglets précédents ainsi que les paramètres du projet : utilisateurs, catégories, versions du produit, droits et rôles, etc.

Utilisation

Pour commencer, comment créer une clé SSH et la fournir dans le GLPI.

Si vous avez déjà une clé que vous utilisez pour malherbe, on peu prendre la même/
Mais une nouvelle dédié à GIT est bien aussi.

Cette opération se passe sous Linux et MAC, si vous avez un windows, ouvrir un terminal sur monteverdi.

  1. Ouvrir un terminal (xterm, Konsole, …)
  2. Vérifiez que le répertoire .ssh existe → ls -al et chercher .ssh
  3. Générer un clé SSH →
    1. ssh-keygen -t rsa ~/.ssh/ma_cle (changez ma_cle par ce qu vous voulez git,kgit, …)
    2. Pas de mot de passe ! tapez entrée à la demande.
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/souricep/.ssh/ma_cle.
Your public key has been saved in /home/souricep/.ssh/ma_cle.pub.
The key fingerprint is:
SHA256:/kyGnLud7aw2ZNGj9yh1aCQyLf0kJadioXq1Squ2IAk souricep@ifsi2
The key's randomart image is:
+---[RSA 2048]----+
|                 |
|        . . o    |
|       . + *     |
|      . B B =    |
|E    . oS* O o   |
|..  . oo.o+ * .  |
|o .  o o=oo+ +   |
| . .. o  B++. .  |
|   .oo  oo*=+    |
+----[SHA256]-----+
  1. Un fois la clé générée, vous devez avoir dans .ssh, ma_cle et ma_cle.pub ce dernir fichier contient la clé public que vous allez transmettre.
  2. Allez dans .ssh - > cd ~/.ssh
  3. Affichez la clé publique → cat ma_cle.pub
   cat ma_cle.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5gF25l9AR9Y8ji2/CG5oe5MSBfkQjAIwDlyRh8Lt+V/m5gT6PuAhbfuyVNc3z+ByaSV7WobhJHH2n6Hfs8RCpvoTuHBGy4HG3eglN0r+ndkPB3p1C8Quioatw6jKhIUo3flJmPUoN/IbyYP/GbkBxJNxCl/By1u77C4aX42it7kvhFCGjTMhunhOHtFT0OZlygxFVbe9KPLeW4TrMfByEv4P4W9RwV2s/K5rwTCBTx/ZGyplYrq+4iHCWHQFRsipMCAt1i4x8wodqObdYBet81S+hLoVF4qd8nBmeRhwtrmmWbzWlV4KhaOCpiMfYuEyvaL5EoMkeerIeJqOgImZJ souricep@ifsi2
  1. Sélectionner :
 ssh-rsa AAAAB3N.......(jusqu'à la fin) 
  1. copier/coller dans le ticket GLPI

C'est fini, une fois le ticket clos, vous pourrez vous logguer.

Connexion

Voici la page :


Compte

Projet






Dépôt







Récupérer/écrire dans un dépôt

Une fois un projet avec un dépôt GIT créé, vous pouvez récupérer/écrire les données via les commandes habituelles de GIT par SSH.
Pour récupérer un dépôt, il y a une petite configuration de votre poste afin que cela marche.

Ouvrir un terminal :

  1. Aller dans votre répertoire .ssh - cd ~/.ssh
  2. Normalement votre clé nécessaire à GIT que vous avez fourni devrait se trouver là - ls (pour vérifier)
  3. Créer/modifier le fichier config dans ~/.ssh
    • vi(nano, gedit, emacs, …) config
    • Ajoutez et sauvez :
     Host ifforge.univ-grenoble-alpes.fr
     IdentityFile ~/.ssh/ma_cle (remplacer par le nom du fichier contenant votre clé publique)
     ForwardAgent no
     

Voilà maintenant les commandes GIT devraient fonctionner.
On peut reprendre les commandes données sur ifforge :
Dans le cas de l'utilisateur test !!

Configuration de Git :

Téléchargez et installez Git
git config --global user.name "Redmine Admin"
git config --global user.email ifinfo@univ-grenoble-alpes.fr
Upload SSH Public Key

Configurer un nouveau dépôt :

mkdir pjttest
cd pjttest
git init
touch readme.txt
git add readme.txt
git commit -m 'Initializing pjttest repository'
git remote add origin ssh://git@ifforge.univ-grenoble-alpes.fr/ptest/pjttest.git
git push -u origin master

Configurer un dépôt existant :

cd existing_git_repo
git remote add origin ssh://git@ifforge.univ-grenoble-alpes.fr/ptest/pjttest.git
git push -u origin master

Cloner un dépôt :

git clone ssh://git@ifforge.univ-grenoble-alpes.fr/ptest/pjttest.git

A vous de jouer !

redmine.txt · Dernière modification: 2019/05/16 08:17 (modification externe)
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki