admin syst rés

Logiciels (logiciels libres en majorité) ou ressources (liées aux logiciels) utiles aux administrateurs systèmes et réseaux informatiques

XAMPP : serveur web complet

Fiche ressource Article, événement, site web...
  • Création ou MAJ importante : 22/09/08
  • Correction mineure : 15/05/09
Mots-clés

XAMPP : serveur web complet

Avec XAMPP, il devient facile et rapide d'installer, de configurer et d'utiliser un serveur web Apache, incluant PHP, Perl et MySQL. XAMMP est livré sous forme de 4 kits : Linux, Windows, MacOSX et Solaris 8. Pour en savoir plus, lire la description des Apache Friends français.

Le package complet comprend : Apache 2, MySQL 5, PHP 5 + PEAR, MiniPerl, OpenSSL, phpMyAdmin, XAMPP Control Panel, Webalizer, Mercury Mail Transport System, FileZilla FTP Server, SQLite, ADODB, Zend Optimizer, XAMPP Security.

XAMPP Lite est une version allégée portable fonctionnant sur un média USB (pas de modification de la base de registre). Elle comprend les logiciels Apache, mySQL, phpMyAdmin, SQLite. Sa mise à jour est moins fréquente que la version complète. Lire la présentation en français de la version Windows.

Vous pouvez consulter ce tutoriel pour une aide à l'installation.

WampServer est également une plateforme supportant  Apache 2.2.10, MySQL 5.1.30, PHP 5.2.7 (pour la version 2.0e).

EasyPHP est un produit similaire à XAMPP pour Windows, très simple d'utilisation également.

ZazouMiniWebServer est un serveur web gratuit, simple et efficace pour windows.

 

Fiche logiciel validé
  • Création ou MAJ importante : 27/08/08
  • Correction mineure : 11/09/13
Fiche archivée
Le rédacteur n'utilise plus l'outil et ne souhaite pas poursuivre le suivi de cette fiche. De plus, le logiciel n'est plus maintenu depuis maintenant un moment.
Mots-clés

PKGI : création rapide d'environnements applicatifs indépendants sous Debian

Cette fiche n'est plus à jour. Elle a été archivée pour la raison exposée ci-contre.
Description
Fonctionnalités générales

PGKI permet de générer une arborescence de fichiers et de répertoires pour démarrer un projet. Ainsi, on peut installer très facilement plusieurs modules :

  • Un serveur Apache
  • Un serveur MySql
  • Un serveur Tomcat
  • Le module PHP pour Apache
  • Un serveur openLDAP
  • etc...

Automatiser la création d’une arborescence permet d'uniformiser les structures des applications et de faciliter le déploiement et l’installation d’une application sur différentes machines (typiquement une machine de production, une machine de développement, une machine de tests).

PKGI se base sur une série de templates de fichiers de configuration et de scripts.

Autres fonctionnalités

La particularité de PKGI, contrairement à ce qui se fait dans les distributions Linux en règle générale, est de pouvoir déployer une application de type LAMP dans un répertoire indépendant et non dans les répertoires standards comme le fait par exemple le package RPM task-lamp de chez Mandriva.

Contexte d'utilisation dans mon laboratoire/service

PKGI est utilisé à l'INIST-CNRS ( http://www.inist.fr ) pour gérer les applications de type LAMP.

Environnement du logiciel
Plates-formes

PKGI ne fonctionne que sur des serveurs Linux Debian.

Environnement de développement
Type de structure associée au développement

aucune

Eléments de pérennité

utilisé par l’INIST-CNRS.

Références d'utilisateurs institutionnels

INIST-CNRS : http://www.inist.fr/

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Le projet est hébergé par la plateforme SourceSup : http://sourcesup.cru.fr/projects/pkgi/

Fiche logiciel à valider
  • Création ou MAJ importante : 28/08/08
  • Correction mineure : 02/08/13
Mots-clés

SVNWebAdmin : interface web d'administration de dépôts SVN indépendants

Ce logiciel est en cours d'évaluation par la communauté PLUME. Si vous utilisez ce logiciel en production dans notre communauté, merci de déposer un commentaire.
Description
Fonctionnalités générales

Ce logiciel propose une interface WEB permettant de réaliser quelques tâches courantes d'administration de dépôts SVN indépendants.

Ce logiciel ne propose pas une administration complète de subversion mais il se concentre uniquement sur la délégation de tâches courantes comme :

  • Création d'un nouveau projet
  • Gestion des droits par projet
  • Gestion des autorisations par projet.

Ce logiciel permet donc aux administrateurs systèmes de garder le contrôle et la maitrise d'un serveur subversion tout en permettant aux développeurs d'être indépendants en terme de gestion de projet.

Contexte d'utilisation dans mon laboratoire/service

Ce logiciel est utilisé pour gérer le serveur subversion interne de l'INIST-CNRS.

Environnement du logiciel
Plates-formes

Toute plateforme UNIX like disposant d'un serveur Web PHP.

Logiciels connexes
Autres logiciels aux fonctionnalités équivalentes

Deux logiciels proposent des interfaces d'administration à svn mais avec une philosophie différente de SVNWebAdmin :

Environnement de développement
Type de structure associée au développement

aucune

Eléments de pérennité

Uutilisé par l'INIST-CNRS.

Références d'utilisateurs institutionnels

INIST-CNRS : http://www.inist.fr/

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Le projet est hébergé par la plateforme SourceSup : http://sourcesup.cru.fr/projects/svnwebadmin/

Fiche logiciel validé
  • Création ou MAJ importante : 27/02/12
  • Correction mineure : 02/03/14
Mots-clés

syslog-ng : gestion de journaux systèmes informatiques

  • Site web
  • Système : UNIX-like, MacOS X
  • Téléchargement
  • Version évaluée : 3.5 LTS
  • Langue(s) de l'interface : anglais
  • Licence : GPL

    La société Balabit IT Security qui est à l'origine du développement de syslog-ng propose deux déclinaisons dans la distribution du produit, l'une est opensource et l'autre propriétaire avec des fonctionnalités additionnelles. Voici la charte d'acceptation de contribution à la licence de syslog-ng ( http://www.balabit.com/dl/CLA_patch.pdf )

Description
Fonctionnalités générales

Syslog-ng (ng=new generation) est une implémentation étendue du protocole standard de gestion des journaux système (les "logs") sous différentes distributions Linux et Unix. Syslog-ng est largement utilisé dans la centralisation des "logs" provenant de différents systèmes d'infrastructures hétérogènes. Syslog-ng peut travailler en mode serveur (réception des logs) ou agent (envoi des logs). Chaque machine serveur peut ainsi envoyer ses logs systèmes vers un serveur central syslog-ng. Syslog-ng est flexible et simple a configurer. Il propose des fonctionnalités puissantes de filtrage de contenu permettant de répartir les logs dans des fichiers et répertoires propres à chaque systèmes.

Au niveau de la centralisation des journaux syslog-ng permet la discrimination des sources, une meilleure sécurité des échanges (envois chiffrés en TLS) et la possibilité d'utiliser le protocole TCP comme couche de transport alternative au standard UDP de syslog.

Autres fonctionnalités
  • Gestion de configuration souple, structurante et "human readable"
  • Gestion intelligente et fine dans la rotation des fichiers logs et des filtrages de logs avec des expressions régulières
  • Réception/envoi de logs sur le réseau en TCP et en UDP et sachant écouter plusieurs ports à la fois
  • Compatible IPv6
Interopérabilité
  • Compatible avec le format standard UNIX syslog
  • Alimente un moteur de corrélation de logs en entrée comme sec.pl
Contexte d'utilisation dans mon laboratoire/service

syslog-ng archive et traite les journaux informatiques d'une vingtaine de serveurs internes du laboratoire LPNHE ( http://lpnhe.in2p3.fr ) et des serveurs de système d'acquisition de l'Observatoire Pierre Auger en Argentine ( www.auger.org ). A terme, les matériels réseaux (routeurs, switchs et bornes wifi) et imprimantes vont également voir leurs logs systèmes et trafic gérés entièrement par syslog-ng afin d'avoir une maitrise et un contrôle des données journalisées.

Limitations, difficultés, fonctionnalités importantes non couvertes

Si le flux de données réseaux en entrée de syslog-ng devient important, il n'est pas dit que celui-ci ne perde pas des informations en route. Mais une étude faite par Balabit rassure tout de même un peu la situation (cf. http://www.balabit.com/support/knowledge_base/arti... ) .. (à suivre)

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

DragonFly BSD, FreeBSD, NetBSD, OpenBSD, MacOSX, Solaris, IBM AIX, HP-UX, Cygwin, Tru64 et certaines distributions Linux (Debian, Fedora, Gentoo, Mandriva, Suse, Ubuntu, RedHat).

Plates-formes
  • syslog-ng et addons officiels tournent sur plate-forme UNIX/Linux. Ils sont téléchargeables sous forme de tarballs et rpm/deb/ports.
  • Il existe des contributions de plugins/addons pour renvoyer les journaux évènements Windows vers du format syslog.
Logiciels connexes
Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Bien que le développement principal soit entièrement supporté par l'éditeur BalaBit IT Security et par l'auteur, Balázs Scheidler, la communauté opensource de syslog-ng apporte tout de même sa très forte contribution via les sites de développement opensource comme freshmeat.org et sourceforge.net .

Eléments de pérennité

syslog-ng apporte de nouvelles fonctionnalités indispensables à syslog. Tout en restant 100% compatible avec ce dernier il est devenu incontestablement le nouveau successeur de syslog.

Vous pourrez désormais faire un clone git de la source en local via github:

$ git clone git://github.com/balabit/syslog-ng

Références d'utilisateurs institutionnels

Dans mon environnement proche :

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums
Documentation utilisateur
Divers (astuces, actualités, sécurité)
  • syslogd et syslog-ng peuvent travailler ensemble, en configurant syslog pour que celui-ci renvoie tous ces logs en localhost (dans le fichier /etc/syslog.conf, vous devez avoir que cette ligne : *.* @127.0.0.1) et syslog-ng ne doit recevoir les logs locaux que via le port udp en local uniquement.
  • Pour éviter d'éclater les données de vos traces, sachez organiser et restez simple dans la gestion. Pour proposition :
    • rangez toujours vos fichiers logs dans une arborescence simple, par ex. /var/log/<année>/<mois>/<jour>/messages_<annee>_<mois>_<jour>_<heure>.log, vous faites ici de la rotation de logs tout simplement ;)
    • séparez dans un fichier à part les messages dont l'id priorité < 4 (emerg,alert,crit,error) par ex.
    • pour les lectures en temps réel sans grossir un fichier log, configurez syslog-ng pour qu'il écrive les logs sur un tube nommé unix. Vous pourrez par la suite lire les logs en faisant tout simplement un cat ou injecter sur un stdin d'un programme tiers.
  • Comment compiler syslog-ng depuis une source: http://www.balabit.com/network-security/syslog-ng/...
Contributions

Service d'hébergement de sites Web du CC-IN2P3

Fiche ressource Article, événement, site web...
  • Création ou MAJ importante : 25/08/08
  • Correction mineure : 25/08/08
Mots-clés

Service d'hébergement de sites Web du CC-IN2P3

Le Centre de Calcul de l'IN2P3 (CC-IN2P3) propose un service d'hébergement de sites Web. Initialement réservé aux unités du CNRS, il est, sous réserve d'acceptation, également accessible à des sociétés, groupements ou manifestations dont les activités sont en rapport avec le monde de la recherche. En août 2008, 130 sites sont hébergés.

Un peu plus d'informations : http://cc.in2p3.fr/article423.html

Fiche logiciel validé
  • Création ou MAJ importante : 06/01/14
  • Correction mineure : 06/01/14
  • Rédacteur de la fiche : Dominique Caron - Concepteur principal du logiciel - Laboratoire Charles Coulomb (L2C) - Montpellier (CNRS, Université Montpellier II)
  • Relecteur(s) : Fabrice Boyrie (ICGM - service informatique)
    Rémy Dernat (ISEM)
  • Responsable thématique : Anne Durand (CLEO)
Pour aller plus loin

AIGLe : Système d'Information et de Gestion Collaboratif de Laboratoire

Une fiche Dév Ens Sup est en relation avec cette fiche, consultez-la pour plus d'informations : AIGLe
Description
Fonctionnalités générales

Logo AIGLe AIGLe est un Système d'Information Collaboratif destiné aux laboratoires de type UMR. Toute personne appartenant au laboratoire accède à l'application (en ligne) et y possède les droits qui lui sont propres et qui lui ont été attribués par l'administrateur.

L'application fournit de nombreux services :

  • Gestion de la production scientifique :
    • dépôt/modification et récupération (automatique et/ou manuelle) depuis et vers HAL (Hyper Archives en Ligne)/TEL/CEL et vers arXiv/PubMed_Central (via HAL).
    • import de documents bibliographiques depuis EndNote, arXiv, PubMed et Web of Sciences (sous réserve d'abonnement).
    • AIGLe est à ce jour l'unique application (libre ou propriétaire) exploitant toutes les
      fonctionnalités des webServices de HAL pour déposer / modifier / moissonner / importer / exposer l'ensemble de la production
      scientifique d'une structure de recherche.
  • Réservation de salles.
  • Réservation de matériel.
  • Organisation de congrès/séminaires.
  • Gestion de la bibliothèque.
  • Gestion de documents internes.
  • Les votes, enquêtes, sondages au sein du laboratoire.
  • Gestion des absences/missions.
  • Les informations sur le personnel (contrôle avec la base Labintel et/ou Harpège).
  • Génération de pages web (pages perso, liste des publications, annuaire, trombinoscope etc ...)

AIGLe est fourni avec un plugin. Ce plugin est compatible avec les CMS SPIP et Fastboil et  peut également être utilisé sans CMS ou même, en utilisant des 'iframe', avec n'importe quel CMS.

AIGLe étant modulaire, il est possible de ne pas utiliser tous les services.

Autres fonctionnalités

AIGLe est capable de récupérer sans intervention manuelle les publications du laboratoire déposées sur HAL par les collaborateurs d'autres laboratoires.

Il aide à détecter :

  • Les doublons HAL.
  • Les noms des auteurs de votre laboratoire mal orthographiés sur HAL.
  • Les noms de revues mal orthographiés sur HAL, etc ...

NB : il n'est pas très difficile de transformer AIGLe en mini-instance de HAL en ajoutant par exemple des métadonnées propres à votre laboratoire dans les publications, ou même de nouveaux types de publications.

L'authentification des utilisateurs peut se faire via pwauth (unix), imap(s), ldap(s) ou mysql.

Interopérabilité

Publications :

  • Import des notices biblio issues de EndNote ou de Wikindx (Fichier XML).
  • Import des fichiers XML issus de Labintel, permettant un contrôle du personnel.
  • Import de notices Biblio depuis : HAL (référentiel), arXiv, PubMed, Web of Sciences (sous réserve d'abonnement à WoS).
  • Export des notices Biblio au format RTF, Endnote Refer, HTML, etc ...
  • Repérage dans un fichier csv issu de l'OST (cette fonctionnalité n'est plus maintenue depuis la version 4.3.5).
  • Communication (via les webservices) avec HAL pour l'échange des informations sur les publications (AIGLe dispose de son propre Webservice permettant à HAL d'informer AIGLe des changements d'état des publications).

Gestion du personnel et de l'annuaire :

  • Possibilité de communiquer avec un serveur LDAP ou une base de données utilisateurs.
  • Possibilité de faire des vérifications à partir de HARPEGE ou de Labintel.
  • Exportation de liste d'informations au format PDF, excel ou csv.

Internet :

  • AIGLe comprend un plugin (SPIP, FastBoil, Iframe, noCMS) pour exposer les publications, l'annuaire, les pages web professionnelles des personnels, les séminaires, les colloques, les congrès,  etc... sur le serveur Web du laboratoire. Ce plugin peut-être configuré selon l'utilisation que l'on en veut. La version SPIP peut fonctionner avec ou sans le kit CNRS (recommandé).
Contexte d'utilisation dans mon laboratoire/service
  • Utilisation coutumière de quasiment tous les chercheurs et ita/iatos de mon laboratoire (L2C) pour : réservation de salle, de matériel, déclaration des absences, dépôt de publication, gestion des séminaires, déclaration des invités, recherche de livre dans la bibliothèque (plus de 3000 livres au L2C) , annonce de congrès, workshop, utilisation du plugin SPIP pour notre site Web etc...

  • Utilisation journalière de la documentaliste du laboratoire (dépôt de publications, gestion de la bibliothèque).

  • Il est utilisé quotidiennement à l'ICG, Institut Charles Gérhardt, principalement pour la gestion et le dépôt des publications.
Limitations, difficultés, fonctionnalités importantes non couvertes

La gestion de la structuration interne des grosses unités est assez rudimentaire. Même s'il permet d'annoncer des congrès (ainsi que le formulaire d'inscription et la liste des participants), ce n'est pas un véritable système de gestion des congrès (comme Indico par ex.). Le logiciel est assez modulaire mais reste une vraie "usine à gaz". Il n'est parfois pas évident de s'y retrouver, en particulier pour le public "non-informaticien" (la documentation, bien que volumineuse, n'est parfois pas très compréhensible).

Environnement du logiciel
Plates-formes
  • LAMP (testé sur des serveurs SL5, SL6, Ubuntu 10 , Mandriva 2010). Nécessite PHP > 5.1

  • Clients testés avec les navigateurs IE, Firefox, Opera.

Logiciels connexes
  • JabRef : Une version modifiée de Jabref (incluse dans le package) est utilisée pour exporter des listes bibliographiques.
  •  PHPExcel : AIGLE utilise la librairie PHPExcel pour exporter des listes de personnel au format Excel ou PDF.
Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Développé au sein du laboratoire de Physique Charles Coulomb avec cvs, bug tracker, feature request, forum, etc, ... disponible sur sourceforge.
Participation des laboratoires IBMM (UM2-UM1), ICG(UM2), LCVN(UM2), ERIC(Lyon2), ....

Eléments de pérennité
  • Permet d'échapper au foisonnement des logiciels d'administration (libres et/ou propriétaires).
  • Aide pour la rédaction des rapports (LOLF, ANR, évaluation, carrières etc...).
  • L'université de Montpellier II a déployé une instance de AIGLe par unité de recherche.
  • OLGA, le successeur de AIGLe,  est en cours de développement. OLGA est l'une des applications du projet "GINA" (Gina Is Not Aigle/Gestion de l'Information Numérique Administrative).  La mise à jour de AIGLe vers OLGA est au cahier des charges. Bien évidemment la maintenance du logiciel AIGLe continue, notamment parce que HAL et donc son WebService évolue et que les utilisateurs continuent à faire des demandes (voir l'activité sur le forum). AIGLe est doté d'un système permettant à n'importe quelle instance d' alerter les développeurs lorsqu'une modification des webServices de HAL est détectée à l'occasion d'un dépôt de publication. La mise à jour de AIGLe peut se fait alors en quelques heures.
Références d'utilisateurs institutionnels

Utilisé par une dizaine de laboratoires des universités Montpellier I et II (L2C, IES, MMDN, LMGC, ICG, GM, I3M, etc...), par le ERIC (Lyon 2), 
par plusieurs laboratoires de l'université Aix/Marseille (MIO, CEREGE, IMBE, LATP ) etc ...

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Bug tracker, feature request , forum, etc, ... disponibles sur sourceforge.

Documentation utilisateur

http://aigle.sf.net
La documentation (utilisation et développement) entièrement rédigée en français est fournie avec le logiciel.

Divers (astuces, actualités, sécurité)
  • Tout le code est en PHP. Il est aisé de modifier certaines parties pour l'adapter à ses propres besoins. Ainsi, il est possible d'adapter AIGLe pour que ce dernier reconnaisse parfaitement votre schéma LDAP au travers du script UtilLdap.php du dossier admin et après avoir configuré correctement le module LDAP.

  • Pour la synchronisation nocturne des publications avec HAL, Il faut copier (éventuellement l'adapter à votre distribution) le fichier aiglesync dans votre répertoire /etc/cron.daily et recharger le démon crond.

Contributions
  • Usagers : rapportez les bugs (soit auprès du développeur principal (Dominique Caron) soit via le bugs tracker disponible sur http://aigle.sf.net).
  • Usagers: si vous utilisez et appréciez AIGLe, merci d'exposer son logo ( AIGLe logo )  pointant vers son site web (http://aigle.sf.net) sur le serveur Web de votre laboratoire.
  • Développeurs : de nombreuses choses restent encore à faire et à améliorer, si vous voulez participer au développement de AIGLe, inscrivez-vous sur SourceForge et faites un mail au développeur principal.

Présentations du TutoJRES de juin 2008 "La gestion des journaux informatiques"

Fiche ressource Article, événement, site web...
  • Création ou MAJ importante : 06/08/08
  • Correction mineure : 11/08/09
Mots-clés

Présentations du TutoJRES de juin 2008 "La gestion des journaux informatiques"

Ce tutoJRES n°7 (juin 2008) était consacré à la gestion des journaux informatiques (ou "gestion des logs").

Programme :

  • Accueil, Introduction : François Morris
  • Présentation de la mise en œuvre de syslog-ng et d'outils afférants : Julien Charpin (CNRS/Centre d'Océanologie de Marseille)
  • Exploitation des logs pour des mesures pro-actives : Christophe Labourdette (CNRS/Centre de mathématiques et de leurs applications)
  • Corrélation de journaux avec le framework Prelude : Sébastien Tricaud (INL)
  • Politique de gestion des traces au CNRS : démarche et mise en œuvre : Robert Longeon (CNRS/services du Fonctionnaire de Sécurité de Défense)
  • Politique de gestion des journaux informatiques : Serge Aumont (Comité Réseaux des Universités)
  • Gestion des journaux systèmes et traitement d'incidents : Charles Delattre (CERTA)
  • Le droit de loguer : Eric Barbry (Avocat au cabinet Alain Bensoussan)
  • Droit appliqué à la gestion des logs et réquisitions : Nathalie Favier (DCSSI/CERTA)

Les présentations ainsi que certaines vidéos sont disponibles à l'URL indiquée ci-dessus.

RESINFO : réseau métier d’administrateurs systèmes et réseaux

Fiche ressource Article, événement, site web...
  • Création ou MAJ importante : 05/08/08
  • Correction mineure : 22/03/13

RESINFO : réseau métier d’administrateurs systèmes et réseaux

Définition donnée sur le site de RESINFO :

RESINFO est une fédération des réseaux (métiers) d’Administrateurs Systèmes et Réseaux (ASR). Cette fédération est soutenue / reconnue par la MRCT, sous la tutelle du CNRS. Les administrateurs systèmes et réseaux de plusieurs départements scientifiques et régions se sont organisés en réseaux de compétence, avec les objectifs communs suivants :

  • faciliter la communication entre leurs membres
  • échanger les compétences, mutualiser les expériences

dans le but d’améliorer le service rendu aux utilisateurs de l’enseignement supérieur et de la recherche, à court, moyen et long terme.

Ces réseaux concernent toutes les personnes exerçant des fonctions relatives à l’administration des systèmes et réseaux dans le contexte de la recherche et de l’enseignement supérieur.

RESINFO organise des journées JoSy qui sont référencées dans des fiches PLUME.

En juin 2008, 13 réseaux font partie de cette fédération qui est un lieu d'échange entre ces réseaux et qui pilote différentes actions : formation, journée thématiques JoSy, groupes de travail, compilation de documents, ...

Fiche logiciel validé
  • Création ou MAJ importante : 27/03/14
  • Correction mineure : 27/03/14
  • Rédacteur de la fiche : Matthieu Herrb - LAAS (CNRS)
  • Relecteur(s) : Anthony Mallet (LAAS Service 2I)
    David Gauchard (LAAS-CNRS)
  • Contributions importantes : Cette fiche a été rédigée initialement par Frédéric Camps. Elle est reprise avec son accord par Matthieu Herrb.
  • Responsable thématique : Anne Durand (CLEO)
Mots-clés

git : gestionnaire de version décentralisé

Description
Fonctionnalités générales

git est un logiciel de gestion de versions décentralisé. Son rôle principal est d'assurer le suivi des modifications dans un ensemble de fichiers. Il repose sur un système d'archivage de fichiers adressable par le contenu via l'utilisation de fonctions de hachage cryptographiques (SHA-1) pour indexer les fichiers.

git est principalement utile avec des fichiers au format texte (code source, fichiers de configuration,...) mais il peut aussi gérer des documents binaires de manière efficace.

Comme tout logiciel de gestion de version, il permet d'enregistrer les modifications successives de l'ensemble des fichiers, de visualiser l'historique des modifications, de gérer des branches de modifications parallèles.

Son aspect distribué rend cette dernière fonctionnalité particulièrement puissante. Chaque utilisateur
disposant d'une copie locale de l'historique du projet, il est possible de travailler hors-ligne, les outils de fusion des branches permettant ensuite de résoudre les éventuels conflits.

Enfin git permet de gérer de nombreux types de flux de travail, que ce soit pour un utilisateur isolé, des petits groupes de travail informel ou des gros projets nécessitant le respect de règles précises.

Autres fonctionnalités
  • Interfaces avec d'autres systèmes de gestion de versions : git permet d'importer des dépôts existants de CVS, SVN ou Perforce.
  • Interfaces graphiques en plus des outils de base en ligne de commande : git dispose d'outils graphiques pour visualiser l'historique des modifications d'un dépôt, soit intégrés dans la distribution de base (gitk, git-gui, gitweb) soit sous forme de logiciels tiers (qgit, giggle, ...)
  • « hooks » à tous les niveaux permettant d'insérer dans le processus des procédures de vérification du code, d'envoi de messages d'information,...
Interopérabilité

git est multi-plateformes (Unix (Linux, BSD, Solaris,...), Mac OS X, Windows). En plus de ses fonctions d'import/export vers d'autres systèmes de gestion de versions, il existe des plugins pour l'insérer dans de nombreux environnements de développement tels que Eclipse (egit), kdevelop, ou Xcode (voir liens dans logiciels connexes).

git-svn permet l'interopérabilité bi-directionnelle avec subversion.

L'outil Tortoise git permet une intégration avec l'explorateur de fichiers de Microsoft Windows.

Contexte d'utilisation dans mon laboratoire/service

De nombreux logiciels développés au laboratoire sont gérés sous git. Le service informatique propose un serveur d'hébergement git couplé au logiciel de forge Trac pour héberger les développements de chercheurs. En particulier les équipes du pôle robotique maintiennent l'ensemble de leurs développements mis à disposition sous licences libres sur ce serveur.

Limitations, difficultés, fonctionnalités importantes non couvertes

La principale difficulté de git est sa richesse fonctionnelle. Bien que les concepts et les commandes de base soient très faciles à comprendre, il y a derrière une richesse et une complexité qui peuvent dérouter certains utilisateurs.

git permettant une grande liberté dans le type d'organisation du développement, il faut se donner des moyens organisationnels pour gérer et canaliser le développement de projets de grande taille.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

Il est aisé d'utiliser git sous toutes les distributions de Linux (un seul package à installer), tous les systèmes BSD et probablement tout système Unix disposant des outils de ligne commande GNU (bash, grep, ...). Disponible sur Windows (version native msysgit et Tortoise Git) et MacOS X.

Plates-formes

Linux, *BSD, Solaris, MacOSX, Microsoft Windows

Logiciels connexes

-Forges logicielles autour de git :
Ces forges offrent des possibilités intéressantes de travail collaboratif via le coté distribué de git. En plus dans une forge git, si la forge ferme, on ne perd pas le dépôt, et il est possible de le migrer d'une forge à l'autre en cas de besoin.

  • github service gratuit pour les projets publiques, possibilité d'hébergement payant pour des projets privés.
  • gitorious hébergement de projets libres uniquement.
  • gitlab permet de créer sa propre forge git similaire à github
  • Et la plupart des forges classiques supportent git (intégré dans trac 1.0, fusionforge, chiliproject, redmine...)

-Interfaces web :
(en plus de gitweb, intégré à la distribution de git :

-Visualisation de l'historique :

-Plugin pour IDEs :

-git pour MS Windows :

-Serveur git multi-utilisateurs :
gitolite permet d'héberger des projets git sur un serveur avec une gestion des utilisateurs via des clés publiques SSH

Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

git a été créé par et pour les développeurs du noyau Linux.
Il a été écrit à l'origine par Linus Torvalds et est actuellement maintenu par C Junio Hamano.

Eléments de pérennité
Références d'utilisateurs institutionnels
Environnement utilisateur
Liste de diffusion ou de discussion, support et forums
  • Groupe Google pour les débutants.
  • git [at] vger [dot] kernel [dot] org (Liste de diffusion) plus centrée sur le développement (archives).
Documentation utilisateur
Divers (astuces, actualités, sécurité)

Pour la résolution des conflits lors de la fusion de branche, git peut utiliser des logiciels externes tels que meld ou kdiff3 pour proposer une interface plus conviviale que l'édition d'un fichier avec des marqueurs de conflits.

Contributions

Les contributions se font via la communauté des contributeurs de git.

QSOS Qualification et Sélection de logiciels Open Source

Fiche ressource Article, événement, site web...
  • Création ou MAJ importante : 07/07/08
  • Correction mineure : 06/07/09
Mots-clés

QSOS Qualification et Sélection de logiciels Open Source

Utilisation réussie de QSOS (Qualification et Sélection de logiciels Open Source) pour choisir un logiciel de workflow (EAT - Enchaîner, Automatiser et Tracer), pour le réseau national de 15 plateformes de bioinformatique ReNaBi. Le schéma ci-dessous résume l'utilisation de QSOS :

4 étapes de la méthode QSOS

Fichier attachéTaille
4etapesQSOS.png22.78 Ko
Syndiquer le contenu