Repository

Notre code source sous licence GNU GPL v2 est disponible sur Github : https://github.com/Homidom/.

Il est donc consultable en ligne mais aussi téléchargeable via le client Github fir Windows, directement compressé dans un fichier zip ou via n'importe quel client subversion.
Plus d'informations ICI.

Le repository est composé de tout le projet Visual Studio 2010 (Framework .net 4) avec un répertoire dédié à chaque module et drivers. Il y a également les dossiers contenant les codes sources des interfaces ainsi que les versions complétes de test et de production :

Structure du repository

  • DEBUG : Uniquement utilisé en Local 
  • RELEASE : Version compléte utilisée à des fins de tests  
  • STABLE : Dernière version stable utilisée pour générer l'installeur 
  • Drivers : dossier contenant tous les projets de drivers 
  • HoMIDoM : la DLL de base du serveur 
  • HoMIServicE : le service (l'application qui lance le serveur, créé le service SOAP...) 
  • HoMIAdmiN : L'interface D'administration lourde (VB.net et WPF) 
  • HoMIGuI : Utilitaire présent dans la barre des tâches pour gérer le service 
  • HoMIDroiD : l'interface cliente Android 
  • HoMIWeB : l'interface cliente WEB
  • HoMIWpF : l'interface cliente lourde (Vb.net t WPF)
  • Homidom_Install : scripts permettant de créer l'installeur depuis le dossier STABLE
  • Dll_externes : Dlls libres de droits servant dans le projet
  • Images : les images utilisées dans le projet
  • ...

Important : le projet étant libre, tout le monde peut télécharger le code source, par contre pour envoyer ses modifications, il faut faire parti du projet et avoir les droits adéquats. Si tu souhaites te joindre à nous ou tout simplement faire des propositions (corrections d'erreurs, proposition d'amélioration...), contacte nous par le biais du Forum, du canal IRC ou par mail.

 

Téléchargement avec le client Windows Github

Pour pouvoir visualiser le code, le compiler, effectuer des tests, développer et ensuite envoyer ses modifications, il faut utiliser une copie locale du repository.

La solution la plus simple pour simplement récupérer le code est d'utiliser l'interface web https://github.com/Homidom/homidom et de cliquer sur "Download as ZIP". Ceci permet d'avoir une copie locale et de pouvoir editer la solution dans Visual Studio.


Sinon, pour mettre en place une solution plus perenne en gardant un repository local synchronisé avec Github, il faut utiliser le client Github for Windows. Celui-ci est assez simple et complet à la fois.

Une fois le client installé, il faut configurer son compte Github puis cloner le projet HoMIDoM :

 

 

 

 

 

 

 

 

Ancienne procédure avec TortoiseSVN et GoogleCode, utilisable en partie avec Github

SVN_checkout

 

Il faut renseigner l'adresse du repository : https://homidom.googlecode.com/svn/trunk/

SVN_checkout

 

Tortoise lance ensuite le téléchargement :

SVN_checkout

 

Etant donné que nous avons choisi l'url en HTTPS (il est également possible de le faire en HTTP), il faut accepter le certificat de google pour sécuriser la communication entre Tortoise et GoogleCode :

SVN_checkout_certificat

 

Le téléchargement s'effectue. Cela peut prendre plusieurs minutes suivant la vitesse de transfert :

SVN_checkout_donwload

 

Une fois le téléchargement fini, tout le code source est disponible en local :
SVN_checkout_done

La croix verte signifie que le contenu des répertoires et les fichiers n'ont pas été modifiés depuis le dernier Update

Le point d'exclamation en rouge indique que des fichiers ne sont pas à la même version entre la version locale et la version stockée sur le serveur. Ceci est généralement le cas avec les fichiers de config, log et autres. Des qu'un fichier est différent le répertoire contenant apparait avec ce sigle.

Mise à jour (Update)

Pour permettre d'avoir la dernière version du code source, il faut effectuer un update de la copie locale :

SVN_update

Tortoise va télécharger tous les fichiers mis à jour, supprimer les anciens, ajouter les nouveaux... et ainsi la copie locale devient une copie conforme de la dernière version disponible en ligne !

 

Il est obligatoire de faire un Update de la copie locale avant de travailler sur le code pour être sur de ne pas modifier une ancienne version !

 

Envoyer ses modifications (Commit)

IMPORTANT : il faut être membre de l'équipe et avoir les droits nécessaires sur google code pour effectuer un commit du code !

Cette opération consiste à envoyer dans le repository central les modifications effectuées en local pour les partager avec tout le monde.

SVN_commit

 

Il faut saisir un petit texte expliquant les modifications qui ont été effectuées sur le code ou les fichiers. Ceci pour permettre une meilleure communication avec le reste de l'équipe mais aussi d'avoir un historique complet des mises à jour.

SVN_commit

 

La première fois qu'un commit est fait, Tortoise va demander le compte et mot de passe à utiliser pour s'authentifier auprès de googleCode. Ceux-ci sont accessible en allant dans l'interface web GoogleCode à la page Source/Checkout

SVN_commit_password

Tortoise envoie ensuite les mises à jour sur le repository central

SVN_commit_done