• BBL Version :: versionnage simple et lisible en BASH

    Versionnage simple, lisible et contrôlé en BASH.

    BBL Version est un outil de versionnage développé entièrement en BASH, conçu pour conserver les états successifs d’un projet sous forme d’archives complètes, identifiables, vérifiables et directement accessibles.

    L’objectif est de proposer une approche volontairement transparente : préparer, versionner, comparer et restaurer les états d’un projet, tout en conservant une organisation des fichiers compréhensible et indépendante de tout format propriétaire.

  • Pourquoi BBL Version ?

    Au fil d’un développement, conserver des états successifs d’un projet devient vite nécessaire : avant une modification importante, après une évolution fonctionnelle ou simplement pour pouvoir revenir rapidement à une version connue.

    BBL Version est né de ce besoin : automatiser la création de commits sous forme d’archives complètes, identifiables et contrôlées, tout en conservant une organisation simple et directement exploitable depuis le système de fichiers.

    Il ne cherche pas à remplacer Git, mais à proposer une approche complémentaire basée sur des états complets du projet, faciles à retrouver, comparer et restaurer.

  • Fonctions clés

    BBL Version regroupe les principales opérations nécessaires pour suivre l’évolution d’un projet et manipuler ses différentes versions depuis la ligne de commande.

    L’outil permet notamment d’initialiser un projet, de créer des versions successives, de comparer différents états, de restaurer des fichiers et d’obtenir des informations sur le contenu et l’évolution des sources.

    Chaque fonctionnalité est pensée pour rester simple à utiliser, avec des commandes explicites et une organisation des versions directement lisible dans le système de fichiers.

    Commandes principales

    init — initialise un projet et prépare les répertoires, fichiers de configuration et dépendances nécessaires à son versionnage.

    ignore — permet de gérer les fichiers et répertoires exclus du versionnage et de vérifier les règles appliquées au projet.

    add — copie tout ou partie des sources dans une zone figée et génère le manifeste utilisé pour contrôler l’état préparé.

    commit — crée une archive versionnée à partir de l’état figé, calcule son empreinte SHA-256 et met à jour l’historique du projet.

    diff — compare les sources, la zone figée ou deux commits afin d’identifier les fichiers ajoutés, modifiés ou supprimés.

    restore — restaure un fichier précis depuis une ancienne archive sans avoir à revenir à l’ensemble du projet.

    import — importe des versions existantes depuis un dépôt Git ou SVN afin de les intégrer à l’historique exploitable par BBL Version.

    deploy — déploie un commit validé vers un environnement de test configuré pour le projet.

  • Un versionnage lisible

    BBL Version associe chaque état du projet à une version et à un numéro de build. La version correspond au niveau fonctionnel du projet, par exemple 0.0.9, tandis que le build distingue les différents états successifs créés pour cette même version.

    Une même version peut ainsi produire plusieurs archives : 0.0.9--000, 0.0.9--001 ou 0.0.9--002. Cette organisation permet de conserver plusieurs commits sans écraser les précédents, tout en identifiant immédiatement à quelle version ils appartiennent.

    Le principe reste volontairement simple : la version décrit l’évolution du projet, le build identifie un état précis de cette version, conservé dans une archive indépendante et directement exploitable.

  • Évolution mesurable

    BBL Version ne se limite pas à conserver les différentes versions d’un projet : il permet également d’en suivre l’évolution à partir d’indicateurs simples et directement exploitables.

    Taille des sources, nombre de fichiers, volume de lignes de code et répartition par langage peuvent ainsi être analysés et comparés d’une version à l’autre.

    Ces statistiques donnent une vision concrète de la progression du projet, facilitent l’identification des évolutions importantes et permettent de conserver un historique mesurable du développement.

  • Installation et compatibilité

    BBL Version est conçu pour fonctionner directement dans un environnement Linux disposant de BASH, sans nécessiter d’interface graphique ni de service supplémentaire.

    Son installation repose sur un nombre limité de dépendances système utilisées pour les opérations de copie, d’analyse des sources et, selon les fonctionnalités activées, de transfert distant.

    L’objectif est de conserver un outil léger et facilement déployable : une installation BASH classique, quelques utilitaires standards et un accès direct aux projets à versionner.

  • Pour les développeurs

    BBL Version s’intègre directement dans le quotidien du développeur : les opérations sont exécutées depuis la ligne de commande et les versions restent accessibles comme de simples fichiers et répertoires.

    Cette approche permet de conserver la maîtrise du processus de versionnage, d’inspecter facilement les états enregistrés et d’intégrer progressivement l’outil dans des scripts ou des workflows existants.

    BBL Version privilégie ainsi des mécanismes explicites et compréhensibles : savoir ce qui est sauvegardé, où les versions sont conservées et comment retrouver ou restaurer un élément du projet.

  • Objectifs

    BBL Version a pour objectif de proposer un outil de versionnage simple, transparent et suffisamment robuste pour accompagner un projet tout au long de son développement.

    Son évolution vise à couvrir progressivement l’ensemble du cycle de versionnage : création des états, comparaison, restauration, analyse des sources, statistiques et export des informations utiles.

    Le développement reste guidé par le même principe : ajouter des fonctionnalités sans perdre la lisibilité de l’outil, la maîtrise des fichiers et la simplicité d’utilisation depuis la ligne de commande.

  • Exemple d’utilisation

    Une fois installé, BBL Version s’utilise directement depuis la ligne de commande. L’initialisation associe un projet à son environnement de versionnage et prépare les emplacements nécessaires à la conservation de ses différents états.

    $ bbl-version init mon-projet ./mon-projet

    Les versions sont ensuite créées progressivement et identifiées par une numérotation simple.

    mon-projet
    mon-projet--versioning
    ├── mon-projet--000
    ├── mon-projet--001
    ├── mon-projet--002
    └── mon-projet--003
    
    mon-projet--build

    Les commandes de BBL Version permettent alors de créer de nouveaux états, de comparer les versions, de restaurer un fichier ou encore d’analyser l’évolution du projet.

    $ bbl-version build
    $ bbl-version diff
    $ bbl-version restore
    $ bbl-version stats

    Le principe reste le même à chaque étape : les versions demeurent identifiables, accessibles et directement exploitables depuis le système de fichiers.

  • FAQ

    BBL Version remplace-t-il Git ?

    Non. BBL Version répond à une logique différente et complémentaire. Git assure un suivi détaillé des modifications et facilite le travail collaboratif, tandis que BBL Version conserve des états complets et directement accessibles d’un projet.

    Où sont stockées les versions ?

    Les versions sont conservées directement dans le système de fichiers, dans une arborescence dédiée au projet. Chaque état possède son propre répertoire et une numérotation progressive permettant de l’identifier facilement.

    Peut-on restaurer uniquement un fichier ?

    Oui. L’un des objectifs de BBL Version est de permettre la récupération d’un fichier depuis une version antérieure sans imposer la restauration complète du projet.

    Quels types de projets peuvent être versionnés ?

    BBL Version travaille directement avec les fichiers et n’est pas lié à un langage particulier. Il peut donc être utilisé avec des projets PHP, JavaScript, CSS, HTML, BASH ou plus généralement avec toute arborescence de fichiers adaptée à son fonctionnement.

    Faut-il une base de données pour utiliser BBL Version ?

    Non. Le fonctionnement de BBL Version repose principalement sur le système de fichiers et les outils disponibles dans l’environnement Linux. Les versions restent ainsi consultables et exploitables indépendamment d’une base de données.

    BBL Version est-il déjà finalisé ?

    Non. BBL Version est actuellement en développement. Les fonctionnalités sont ajoutées progressivement, avec pour priorité la fiabilité du versionnage, la lisibilité des opérations et la maîtrise des données conservées.

Scroll to top