[Plan du site]
Vous êtes ici ---
> Le Site du Zéro
> Les tutoriels
> Non-Officiels
> Programmation
> Environnements de développement
> Gérez vos projets à l'aide du gestionnaire de versions Subversion > Annexes > Créer son espace sur assembla
> Lecture du tutoriel
Créer son espace sur assembla
Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Ce mini-tuto sera assez rapide ! Il est là pour vous expliquer comment créer votre espace SVN à l'aide du site
www.assembla.com.
Le but n'est pas de faire de la pub pour ce site, mais surtout de vous permettre d'utiliser Assembla pour vos futurs projets, histoire que ce que je vous ai appris serve à quelque chose.
Bref, nous allons partir de l'inscription sur le site jusqu'à la création de son espace et l'invitation d'autre membres.
Assembla vient de faire une grosse mise à jour de ses services. Malheureusement, il en a également profité pour rendre les espaces privés payant. Ainsi, si vous voulez continuer à utiliser leurs services gratuitement, il va falloir les rendre accessibles au public. Avec ces mises à jours, il est possible que les screenshots de ce tutoriel ne soient plus tout à fait corrects, ne vous inquiétez donc pas si vous n'obtenez pas tout à fait les mêmes pages. Je mettrai à jour dès que possible.
Citation : Mail assemblaNew subscription plans
We will no longer offer free, private spaces. If you own a free, private space, we will send you an upgrade message in a few days asking you to buy a "Private / Professional" subscription, or convert the space to public permissions. You can make a migration decision here.
Comme je vous l'ai dit, Assembla permet de créer des
repositories. Il permet en fait de faire bien plus de choses.
Le titre de la page de démarrage d'Assembla est :
"Accelerating software development". C'est-à-dire : accélérer le développement de logiciels. Les outils proposés sont donc ici pour aider le développement de logiciels pour les personnes utilisant les méthodes agiles. De fait, on trouve donc beaucoup d'outils en plus de Subversion.
Les méthodes agiles
Regardons sur Wikipedia :
http://fr.wikipedia.org/wiki/Méthode_agile
Citation : WikipediaLa notion de méthode agile se limite actuellement aux méthodes ciblant le développement d'une application informatique. Ces méthodes agiles permettent de concevoir des logiciels en impliquant au maximum le demandeur (client), ce qui permet une grande réactivité à ses demandes. Les méthodes agiles se veulent plus pragmatiques que les méthodes traditionnelles. Elles visent la satisfaction réelle du besoin du client, et non d'un contrat établi préalablement. La notion de méthode agile est née à travers un Manifeste Agile signé par 17 personnalités.
Certes, ce passage n'est pas très compréhensible, mais il résume très bien. Les méthodes agiles sont fondées autour de valeurs. Ces valeurs sont :
- les personnes,
- le logiciel,
- la collaboration,
- l'acceptation du changement.
Les équipes sont souvent de petites équipes très soudées appliquant l'une des méthodes agiles (XP, scrum, DSDM, FDD, etc.).
Chacune de ces méthodes possède ses particularités, mais toutes répondent aux valeurs précédemment citées. Le but de ces méthodes est d'avoir une petite équipe et énormément de communication.
La communication est la base de tout ! Elle permet entre autres le transfert des connaissances, mais pas seulement. Il y a énormément de communication avec le client (collaboration). Lors de l'application de méthodes agiles, le client ne fait pas un contrat demandant un logiciel répondant à un cahier des charges précis. Le client demande une application et suit l'évolution du projet. Il fait partie du projet. En même temps qu'il le suit, il peut modifier ses souhaits à tout moment (ajouter ou enlever certaines choses).
On retrouve les quatre valeurs dans cette description. Les personnes doivent être soudées et communiquer énormément entre elles. Le logiciel doit fonctionner, c'est la première priorité avant la documentation (mieux vaut un logiciel qui marche sans documentation qu'une documentation documentant un logiciel ne marchant pas). Bien sûr, il en faut un minimum. Ce minimum est fait, le reste se trouve dans les
commentaires du code (on retrouve encore une fois l'importance des commentaires) et dans le transfert des compétences et connaissances au sein de l'équipe. De plus, comme le client fait partie du projet, il va également suivre l'évolution du projet et acquérir cette compétence pour manipuler le logiciel. Enfin, comme le contrat n'est pas de fournir un logiciel répondant à un cahier des charges, on trouve également un support aux utilisateurs par l'équipe de développement.
L'objectif est de fournir quelque chose de fonctionnel, même s'il n'est pas fini. Cette méthode permet aux utilisateurs de commencer à utiliser l'application et émettre des commentaires dessus. Ces commentaires faits par les utilisateurs du produit vont donner des idées d'améliorations, ces améliorations vont être demandées en plus à l'équipe de développement (d'où la nécessité d'acceptation du changement ! ; il faut que les développeurs puissent ajouter des features dans le logiciel lorsqu'elles sont demandées).
Voici enfin une liste des principes des méthodes agiles que l'on peut trouver sur Wikipedia (à nouveau) et qui, je trouve, est très explicite :
Citation : WikipediaCes 4 valeurs se déclinent en 12 principes généraux communs à toutes les méthodes agiles.
- « Notre première priorité est de satisfaire le client en livrant tôt et régulièrement des logiciels utiles. »
- « Le changement est bienvenu, même tardivement dans le développement. Les processus agiles exploitent le changement comme avantage compétitif pour le client. »
- « Livrer fréquemment une application fonctionnelle, toutes les deux semaines à deux mois, avec une tendance pour la période la plus courte. »
- « Les gens de l'art et les développeurs doivent collaborer quotidiennement au projet. »
- « Bâtissez le projet autour de personnes motivées. Donnez leur l'environnement et le soutien dont elles ont besoin, et croyez en leur capacité à faire le travail. »
- « La méthode la plus efficace pour transmettre l'information est une conversation en face à face. »
- « Un logiciel fonctionnel est la meilleure unité de mesure de la progression du projet. »
- « Les processus agiles promeuvent un rythme de développement soutenable. Commanditaires, développeurs et utilisateurs devraient pouvoir maintenir le rythme indéfiniment. »
- « Une attention continue à l'excellence technique et à la qualité de la conception améliore l'agilité. »
- « La simplicité - l'art de maximiser la quantité de travail à ne pas faire - est essentielle. »
- « Les meilleures architectures, spécifications et conceptions sont issues d'équipes qui s'auto-organisent. »
- « À intervalle régulier, l'équipe réfléchit aux moyens de devenir plus efficace, puis accorde et ajuste son comportement dans ce sens. »
Maintenant que vous voyez ce que sont les méthodes agiles, vous comprenez ce qu'Assembla peut proposer comme services pour les développeurs. La majorité des outils (sinon tous) permettent d'améliorer la communication. Je parlerai rapidement de quelques autres outils que l'on trouve à la fin du tuto.
Je vais vous demander de respecter un peu ce site. De son côté, il propose un espace (limité) gratuitement pour que vous puissiez faire quelques projets (ou quelques tests), alors de votre côté, vous n'êtes pas obligés d'ouvrir des espaces sur votre compte à tout va et pour n'importe quoi.
Cet espace n'est pas non plus un serveur ftp à utiliser pour transférer vos fichiers ou pour posséder votre petit espace de stockage personnel sur le net.
Je vous demande donc de ne pas ouvrir des espaces pour rien et de fermer vos espaces une fois que vous aurez fini votre projet.
Avant de pouvoir aller plus loin, il faut déjà s'incrire sur le site.
Allez donc sur
www.assembla.com puis cliquez sur
L'inscription ne vous demande pas grand chose :
- un login,
- un mot de passe,
- une adresse e-mail.
Vous voyez qu'il y a plusieurs informations optionnelles. Comme le nom l'indique, elles sont optionnelles, mais ce sont des informations que les autres membres de votre future équipe pourront voir sur vous. Il peut donc être utile de les renseigner.
Une fois la procédure d'inscription passée et confirmée, vous pouvez vous connecter pour entrer sur votre compte.
Lorsque vous vous connectez, si vous n'avez pas reçu le mail de confirmation, cliquez sur le lien pour qu'il vous le renvoie afin de confirmer votre inscription.
Une fois cette procédure terminée, vous devriez tomber sur une page ressemblant à celle-ci :
J'ai déjà pas mal de projets créés donc ma liste n'est pas vide. La vôtre devrait être vide !
Pour créer un espace pour un nouveau projet, allez sur l'onglet "spaces". Dans cet onglet vous trouverez tous vos projets en cours et un bouton pour en créer un nouveau.
Cliquez donc sur le bouton !
Onglet "Name and Description"
Nous arrivons sur la fenêtre de création d'un espace dans laquelle on demande le nom du "space" (de l'espace qui va contenir le projet) et un nom pour l'URL. Renseignez les deux champs et vérifiez la disponibilité de l'URL. Une fois ces champs remplis, on vous demande aussi quel genre de projet vous allez mener (pour directement inclure certains outils). Ne cochez rien pour l'instant ! Vous les ajouterez plus tard un par un.
Vous pouvez aussi renseigner une description ainsi que des tags en bas de la page.
Onglet "Security"
Pour la sécurité, trois options principales :
- non-member access permet de dire quels seront les droits des "non-membres" de ce projet. Aucun, lecture seule ou lecture / écriture ;
- member access : idem, mais pour les membres de l'équipe cette fois ;
- email to flows est une option pour envoyer des mails à l'ensemble de l'équipe. Il s'agit ici de décider qui aura les droits pour le faire.
Onglet "Team"
Dans cette boite de dialogue, vous pouvez inscrire les noms d'autres membres Assembla pour les inviter à rejoindre votre projet. Vous pouvez aussi inscrire les e-mails des membres si vous ne connaissez pas leur login sur Assembla. Si l'adresse mail est reliée à un compte Assembla, l'invitation sera envoyée directement sur le compte Assembla. Sinon, une invitation à la création d'un compte Assembla sera envoyé par e-mail à la personne en même temps que l'invitation pour rejoindre le projet.
Onglets "Wiki Settings" et "Appearance"
Le premier traite du wiki offert avec l'espace, cela ne nous intéresse donc pas. Je peux quand même vous conseiller (si vous comptez utiliser le wiki) de changer le
Wiki markup format de "WYSIWYG" à "Text". L'explication sera donnée plus tard.
Le deuxième traite de l'apparence du site, ça ne nous intéresse donc pas plus pour le SVN.
Dans l'onglet Appearance, cliquez sur le bouton "Create" et votre espace est (enfin) créé.
Vous devriez arriver sur une page comme celle-ci :
Maintenant que l'espace est créé, il faut ajouter les outils que l'on veut utiliser dessus.
Onglet "Admin"
Allez dans l'onglet
Admin puis dans le sous onglet
tools. Une (très) grande liste d'outils est proposée avec le prix affiché (gratuit pour tous ceux que vous pouvez voir normalement) à côté.
Si vous regardez tout ce qu'il y a, on peut entre autres trouver les
Milestones, les
Time Tickets, le
scrum qui sont des outils utilisés par les équipes agiles. L'option qui nous intéresse est Subversion.
Si comme pour moi, lorsque vous cliquez sur Add pour Subversion il ne l'ajoute pas, alors cliquez sur Add pour trac/SVN
Vous devriez donc voir apparaître un nouvel onglet s'appelant "trac/SVN" :
Informations sur le SVN
Dans cet onglet vous trouverez beaucoup d'informations, mais peu sont réellement utiles.
Déjà, si vous avez aussi Trac, toute la colonne de droite ne nous intéresse pas puisqu'elle est réservée à Trac. Dans la colonne de gauche, si l'on regarde au milieu de tout le blabla, on trouve l'URL du
repository, celle qu'il faut entrer pour faire un
checkout la première fois. Mais ce n'est pas tout, on trouve aussi un lien pour parcourir les fichiers du serveur SVN "plus joliment" qu'en tapant juste l'URL du repository dans la barre d'adresse de son navigateur (vous pouvez essayer pour voir).
Enfin on trouve aussi un lien pour importer et / ou exporter le SVN. Si vous essayez l'exportation, vous verrez que le fichier obtenu contient toutes les informations (versions des fichiers, contenus, commentaires lors des commits, etc.) sur les fichiers et dossiers présents sur le SVN. Et c'est ce genre de fichier qu'il est possible d'importer pour créer un nouvel espace à partir du fichier d'un ancien espace.
Onglet "Alerts"
Si vous créez un espace et que vous ne faites rien, vous allez avoir une drôle de surprise quand il va commencer à avoir du trafic sur le projet. En effet, à chaque modification, un mail vous sera envoyé (c'est valable aussi pour tous les membres de l'équipe). Il faut donc régler ces paramètres pour les adapter à vos besoins.
Pour cela, il faut aller dans l'onglet Alerts :
Décortiquons ce que nous voyons sur cette page :
- un bouton pour afficher les options d'alertes,
- les changements du projet,
- les filtres d'affichages pour les changements du projet.
Les changements du projet
Les changements du projet sont toutes les dernières actions qui ont été faites. On peut voir à droite les options de filtre que l'on peut cocher pour n'afficher qu'une sélection d'événements.
Dans mon cas ne s'affichent que "mes actions", "les uploads de fichier" ainsi que "les commits effectués" sur le SVN.
On voit aussi que l'on peut mettre un filtre par membre avec la combobox juste en dessous du "Filter By User :". Il est possible de choisir une date limite d'affichage des notifications (toutes les notifications dont la date de création / modification est supérieure ne seront pas affiché) ainsi que le nombre de jours en arrière que l'on veut qu'ils reviennent.
Enfin, petit luxe, on peut faire un flux RSS pour pouvoir consulter les modifications depuis un lecteur de flux comme les modules iGoogle, Netvibes ou autres.
Bref, avec tout ça, vous pouvez trier vos informations sur toutes les modifications qu'aura subit le projet, par qui et quand.
On voit dans mes notifications que j'ai déjà pu faire cinq
commits au moment où j'ai pris le screenshot. En plus de savoir que j'ai fait un
commit, on voit le commentaire que j'ai laissé et la date. Je reviens donc sur l'importance de faire des commentaires lorsqu'on fait un commit.
En clair, cette page permet d'avoir un très bon aperçu de l'état du projet.
Les options d'alertes
Si l'on clique sur "Notification settings", on a tout un tas de nouvelles options qui apparaissent :
Dans cette boite, on voit donc que j'obtiens un résumé journalier de toutes les actions que j'ai choisies.
Par défaut, un mail est envoyé à chaque modification. Donc, 20 commits dans la journée = 20 mails ! Pensez donc à changer ces options de notifications.
Il est possible de choisir entre un mail par changement, un résumé par heure (s'il s'est passé quelque chose), un résumé par jour (idem) ou jamais.
Nous allons faire un rapide tour des autres onglets (outils) que l'on peut trouver sur la page.
Alors, sauf si vous avez pris plein d'options en plus, vous devriez avoir comme onglets :
- Wiki,
- Flow,
- Files,
- Chat,
- Milestones.
Si vous ajoutez une option dans le sous onglet tools de l'onglet admin, vous aurez sûrement le droit à un autre onglet. Pour ma part je vais me contenter de présenter ceux de base, c'est-à-dire ceux que je viens de citer.
Onglet "Wiki"
Ici, vous pouvez créer des pages que tout le monde pourra consulter et modifier très rapidement... comme un wiki.
Le nombre de pages n'est pas limité, mais n'oubliez pas que votre espace reste, lui, limité à 500 Mo toutes données confondues.
Il est donc possible de créer des pages et d'écrire ce que l'on veut dedans (si si je vous jure), modifier les pages créées et afficher les différences entre deux versions d'une page.
Add a New Page : permet de créer une nouvelle page. On peut choisir qu'elle apparaisse ou non directement dans la liste "wiki Pages" (sinon il faudra cliquer sur "all pages" pour y accéder).
Edit this page : pour éditer la page affichée.
View Page History : pour accéder et montrer les différences entre deux versions de la page (voir ce qui a été ajouté ou supprimé).
Print this page : imprimer la page.
Delete this page : supprimer la page.
Lorsqu'on édite une page, on a le choix dans le format d'édition et de vision : Text, TextFile, Markdown ainsi que WYSIWYG (What You See Is What You Get, soit "Ce que vous voyez est ce que vous obtenez").
Lorsqu'on édite une page, l'édition ne fonctionne pas en WYSIWYG, donc il faut déjà enregistrer la page pour la passer en vision mode Text (ou autre) et ensuite éditer le wiki ! Pour que le format par défaut des pages créées soit "Text", il faut aller dans l'onglet admin, sous onglet Wiki-Settings.
Onglet "Flow"
Dans cette partie, vous pouvez créer des messages qui pourront également être envoyés par mail à tous les
teammates (autres membres de l'équipe).
Ces messages ont pour vertu d'être courts afin d'expliquer rapidement quelque chose à faire, fait, oublié, etc.
Il est possible d'assigner une priorité ainsi qu'une pièce jointe au message, de même il est possible d'assigner le message à quelqu'un (pour lui donner une tâche par exemple). À partir du message, il est possible de répondre pour continuer une discussion.
Enfin, sur le bandeau de droite, on voit qu'il est possible de trier les messages pour voir seulement le premier message des discussions, les messages les plus récents, les prioritaires ou bien les discussions terminées. Une case à cocher permet de montrer seulement les titres des messages ou bien tout le message.
Enfin, on note la possibilité d'utiliser un flux RSS.
Onglet "Files"
C'est ici que l'on upload les fichiers que l'on veut partager. Lorsqu'un upload est fait, on demande un nom est une description du fichier (pour l'affichage sur la page).
N'importe qui peut ensuite le télécharger et le modifier. Une fois modifié localement, il est possible de faire un "Edit" dans "show details". Lors de l'édition, il est possible de changer le nom du fichier, changer sa description et changer le fichier. Le fichier sera alors remplacé (mais l'ancien sera toujours accessible dans "Old version", comme on le voit sur le
screenshot).
Onglet "Chat"
Pas grand chose à dire, c'est un chat simplifié avec la possibilité de voir l'historique de conversation, d'uploader des fichiers ainsi que de communiquer oralement.
Onglet "Milestones"
L'onglet
Milestones permet de définir des dates limites. Il est possible d'associer des tâches ou des messages à ces dates limites. Les tâches et messages ainsi créés seront également visibles depuis l'onglet
Flow. Il est possible de trier les
Milestones pour afficher les prochaines
Deadlines, les compléter ou toutes à la fois.
On notera le lien d'importation / exportation des Milestones et tâches avec Trac ou Basecamp.
Vous pouvez maintenant créer votre propre projet sur un SVN à l'aide d'Assembla.
N'oubliez pas qu'Assembla propose ce service gratuitement ! Essayez donc de fermer les espaces que vous avez créés une fois que les projets sont terminés.
Je vous demande aussi de ne pas créer d'espace avec le compte que j'ai créé pour le SdZ. Inscrivez-vous sur le site comme je l'ai montré au début du tuto.