Serveur SVN sur Raspberry Pi : guide d’installation complet

Si vous cliquez sur nos liens et effectuez un achat, nous pouvons recevoir une commission d'affiliation. En savoir plus

Le logiciel Subversion, également connu sous le nom de SVN, est un système de contrôle de version open source. En utilisant SVN, votre Raspberry Pi peut être transformé en base de données/serveur pour votre code et vous aider à collaborer efficacement avec votre équipe. Votre code peut ensuite être facilement accessible depuis des PC Linux et Windows.

SVN est disponible via les dépôts officiels et peut être installé en utilisant une simple commande apt-get. Une configuration supplémentaire nécessite la mise en place d’un serveur web Apache. Tout ordinateur de votre réseau peut accéder au serveur en utilisant un client SVN.

L’installation de SVN sur Raspberry Pi est simple. Dans ce guide, je vais vous guider pas à pas pour configurer SVN et le configurer en utilisant le serveur web Apache. Je vais également vous montrer comment utiliser SVN et, aborder certains problèmes courants qui peuvent survenir lors de la configuration.

Si vous débutez avec Raspberry Pi ou Linux, j’ai quelque chose qui peut vous aider !
Téléchargez ma fiche mémo des commandes Linux gratuitement – c’est un guide de référence rapide avec toutes les commandes essentielles dont vous aurez besoin utiliser votre Raspberry Pi. Cliquez ici pour l’obtenir gratuitement !

Principales différences entre SVN et Git

SVN est un système de contrôle de version qui aide votre équipe à suivre toutes les modifications apportées à votre code. Même si vous travaillez seul, il peut vous aider à maintenir une sauvegarde/ base de données de votre code. Il fonctionne de manière très similaire à Git. Cependant, il y a quelques différences clés.

Voici les principales différences entre SVN et Git :

SVNGit
Gestion de versions décentralisée : Chaque développeur a une copie complète du dépôt, y compris tout son historique.Gestion de versions décentralisée : Chaque développeur a une copie complète du dépôt, y compris tout son historique.
Gestion de versions décentralisée : Chaque développeur a une copie complète du dépôt, y compris tout son historique.Aucun réseau n’est requis pour les opérations Git (Peut travailler sur une copie locale).
Les performances peuvent se dégrader avec une grande base de données.Les performances sont généralement meilleures car la communication réseau n’est pas requise.
Plus facile à apprendre.Plus difficile à apprendre.
SVN part du principe que l’historique du projet ne change jamais.En utilisant Git rebase, Git vous permet de changer les commits précédents.
La création de branches et les fusions sont plus complexes.La création de branches et les fusions sont plus fondamentales à la conception de Git.
Bons outils graphiques mais l’écosystème n’est pas aussi riche que celui de Git.Un bon écosystème avec des outils tiers comme GitHub, GitLab, et Bitbucket, etc.
SVN peut gérer les fichiers binaires de manière native et efficace.La gestion des fichiers binaires peut être un peu inefficace en raison de la manière dont Git stocke l’historique des fichiers.
Différences entre SVN et Git

Remarque : Si vous voulez installer et configurer GitLab sur votre Raspberry Pi, vous pouvez suivre cet article (en anglais) à la place.

Installer SVN sur Raspberry Pi

Installer SVN sur votre Raspberry Pi est simple. Il est disponible via les dépôts officiels. Cependant, avant d’installer, il y a quelques étapes que vous devez suivre.

Configurer votre système – Installer Raspberry Pi OS

Avant de procéder à l’installation de SVN, vous devez suivre les étapes suivantes :

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Ça y est, vous êtes maintenant prêt à installer SVN sur votre Raspberry Pi.

Installation du paquet SVN

Pour installer SVN sur votre Raspberry Pi, suivez ces étapes :

  • Connectez-vous en SSH à votre Raspberry Pi en utilisant la commande :
    ssh username@hostname
  • Vous pouvez installer SVN depuis les dépôts officiels en utilisant la commande :
    sudo apt-get install subversion
  • Vous pouvez vérifier que SVN a été installé en utilisant cette commande :
    svn help

Et voilà, vous avez installé avec succès SVN sur votre Raspberry Pi. Continuez à lire pour publier votre premier projet sur le réseau en utilisant le serveur web Apache.

Créer votre premier projet avec SVN

Pour créer votre premier projet, suivez ces étapes :

  • Créez un dossier de dépôt central en utilisant la commande :
    sudo mkdir -p /srv/svn/repos
  • Nous avons un dossier, maintenant créez un projet en utilisant la commande :
    sudo svnadmin create /srv/svn/repos/main-project
  • Vous pouvez vérifier le dossier en utilisant cette commande :
    ls /srv/svn/repos/main-project -la
  • Vous devriez voir tous ces fichiers générés à l’intérieur de votre dossier de projet.
  • Maintenant, créez un projet que nous ajouterons au serveur SVN :
    mkdir -p ~/projects/test-project
    sudo nano ~/projects/test-project/app.js
  • Modifiez le fichier ‘app.js’ comme montré ci-dessous et enregistrez-le :
  • Importez ce projet dans SVN en utilisant la commande suivante :
    sudo svn import ~/projects/test-project file://localhost/srv/svn/repos/main-project
  • Cette commande devrait afficher un éditeur nano comme montré ci-dessous. Ajoutez vos commentaires (encadrés en jaune ci-dessous) et enregistrez et quittez l’éditeur.
  • ll devrait être commité avec succès en tant que révision 1

Et voilà, nous avons créé notre premier projet sur SVN. Maintenant, pour le rendre accessible à d’autres personnes sur le réseau, nous devrons installer un serveur web Apache et le configurer.

Si les commandes Linux ce n’est pas trop votre truc, n’hésitez pas à jeter un œil à cet article qui vous explique les commandes qu’il faut absolument connaître. Je vous donne aussi une antisèche à télécharger pour les avoir toujours sous la main !

Configurer SVN sur Raspberry Pi

Vous aurez probablement besoin de pousser un peu la configuration si vous souhaitez accéder à ce serveur à partir d’autres ordinateurs et donner accès à différents utilisateurs. Voyons comment faire cela.

Configurer l’accès à distance pour SVN en utilisant le serveur web Apache

Pour configurer votre SVN afin qu’il puisse être accessible à distance, suivez ces étapes :

  • Installer les dépendances (modules serveur SVN pour Apache httpd) en utilisant la commande suivante :
    sudo apt-get install apache2 libapache2-mod-svn
  • Pour modifier le dav_svn.conf, entrez la commande suivante pour ouvrir le fichier de configuration dans Nano :
    sudo nano /etc/apache2/mods-available/dav_svn.conf
  • Entrez les lignes suivantes vers la fin du fichier de configuration :
  • Enregistrez et quittez l’éditeur de texte.
  • Redémarrez le serveur web Apache en utilisant cette commande :
    sudo /etc/init.d/apache2 restart
  • Assurez-vous que vous avez les permissions nécessaires pour lire et écrire dans vos répertoires :
    sudo chown -R www-data:www-data /srv
    sudo chmod -R 755 /srv/svn
  • Maintenant, dans un navigateur web sur n’importe quel ordinateur connecté au réseau, entrez l’adresse suivante pour accéder à votre Projet :
    http:///svn/main-project

Création d’utilisateurs

Pour accéder à SVN depuis d’autres ordinateurs, vous devez créer des utilisateurs pour gérer l’accès. Vous pouvez créer un utilisateur SVN en utilisant la commande suivante :
sudo htpasswd -c /etc/apache2/dav_svn.passwd testuser

Remarque : -c est uniquement nécessaire la première fois. Si vous voulez ajouter d’autres utilisateurs, n’ajoutez pas -c ou la commande supprimera des utilisateurs existants.

Accéder à SVN depuis d’autres ordinateurs

Maintenant que le serveur est prêt, voyons comment l’utiliser depuis d’autres ordinateurs sur le réseau. Les étapes sont légèrement différentes selon le système d’exploitation utilisé.

Comment accéder à SVN depuis un client Linux

Pour accéder à vos projets SVN depuis un client Linux, assurez-vous que SVN est installé sur votre PC et suivez ces étapes :

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant
  • Créer un dossier pour télécharger votre projet :
    mkdir -p ~/repos
    cd ~/repos
  • Récupérer votre projet depuis votre Raspberry Pi vers un client Linux en utilisant la commande suivante :
    svn co --username testuser http:///svn/main-project
  • Vous pouvez vérifier que tous les fichiers ont été téléchargés en utilisant la commande suivante :
    ls ~/repos/main-project
  • Ouvrez le fichier ‘app.js’ et modifiez-le en utilisant n’importe quel éditeur de texte (par exemple Nano) :
    nano ~/repos/main-project/app.js
  • J’ai modifié le fichier comme indiqué ci-dessous :
  • Enregistrez et quittez l’éditeur de texte.
  • Vous pouvez voir tous les changements apportés au fichier ‘app.js’ en utilisant cette commande :
    svn diff ~/repos/main-project/app.js
  • Validez les changements sur le serveur SVN en utilisant cette commande :
    sudo svn commit -m "Commit from Linux" app.js
  • Il vous demandera le nom d’utilisateur et le mot de passe que nous avons déjà définis.
  • Vous pouvez vérifier les modifications en utilisant n’importe quel navigateur web :
  • Vous pouvez cliquer sur le fichier ‘app.js’ pour voir son contenu modifié également :

Voilà, nous avons réussi à créer notre projet sur un serveur SVN sur notre Raspberry Pi et à modifier le fichier du projet sur un client Linux. Lisez la suite si vous voulez apprendre à vous connecter avec un client Windows également.

Comment accéder à SVN depuis un client Windows (Tortoise SVN)

Pour accéder à vos dépôts SVN depuis un client Windows, l’outil recommandé est Tortoise SVN. C’est un client SVN Apache implémenté comme une extension de shell Windows. Pour utiliser Tortoise SVN, suivez ces étapes :

Installation de Tortoise SVN

  • Téléchargez la dernière version de Tortoise SVN depuis leur site web.
  • Exécutez le fichier d’installation une fois téléchargé et complétez l’assistant d’installation.

Téléchargement des fichiers du projet

  • Pour connecter à vos dépôts, faites un clic droit n’importe où dans l’explorateur et allez à TortoiseSVN -> Repo-browser.
  • Entrez l’adresse URL de votre dépôt SVN dans la boîte de dialogue.
  • Cela devrait ouvrir votre dépôt dans le Repository Browser.
  • Faites un clic droit sur le dossier de votre Projet et cliquez sur Checkout.
  • Entrez le répertoire dans lequel vous voulez que la copie de travail soit téléchargée.
  • Cliquez sur ‘OK’ pour télécharger.
  • Vous pouvez maintenant naviguer vers le répertoire et voir que les fichiers du Projet ont été téléchargés.

Apporter des modifications

  • Avant de modifier un fichier, assurez-vous d’avoir la dernière copie téléchargée. Faites un clic droit sur le dossier du projet et cliquez sur ‘SVN Update’ :
  • Modifiez le fichier ‘app.js’ dans n’importe quel éditeur de texte :
  • Créez un commit des modifications en faisant un clic droit sur le dossier du projet et en sélectionnant l’option ‘SVN Commit..’.
  • Entrez un message décrivant les modifications effectuées et cliquez sur ‘OK’ :
  • Entrez le nom d’utilisateur et le mot de passe déjà configurés :
  • Cliquez sur ‘OK’ et les changements seront effectués.
  • Vous pouvez vérifier tous les changements effectués en accédant à votre Projet via n’importe quel navigateur web.
Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Rappel: J'ai crée une communauté d'utilisateurs de Raspberry Pi qui vous permet de partage vos avancées, poser vos questions et recevoir de nombreux avantages exclusifs (anglophones uniquement). Cliquez sur le lien pour en savoir plus.

Conclusion

En suivant ce guide, nous avons réussi à créer un serveur SVN sur notre Raspberry Pi et avons appris à accéder à nos Projets sur des clients Linux et Windows.

Pour voir toutes les options de ligne de commande SVN, vous pouvez lire la documentation officielle. Pour approfondir votre compréhension de l’utilisation d’un serveur SVN, vous pouvez suivre ce tutoriel. De plus, pour comprendre plus d’options d’utilisation de Tortoise SVN, vous pouvez également suivre ce tutoriel officiel.

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Ressources supplémentaires pour votre Raspberry Pi

Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant

Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici

Maîtrisez Python sur Raspberry Pi
Pas besoin d’être un génie pour coder quelques lignes pour votre Raspberry Pi.
Je vous apprends juste ce qu’il faut sur Python afin de réaliser n’importe quel projet. La seconde partie du livre est d’ailleurs consacrée à des exemples de projets où je vous guide pas à pas.
Ne perdez pas de temps, apprenez le strict nécessaire et économisez 10% avec ce lien :
Télécharger maintenant

Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources

Comment avez-vous trouvé cet article ?

Cliquez sur une étoile pour noter !

Note moyenne / 5. Nombre de votes :

Aucun vote pour l'instant ! Soyez le premier à évaluer cet article.

Si vous avez aimé cet article ...

Partagez le sur les réseaux

Nous sommes désolés que vous n'ayez pas aimé cet article !

Améliorons cet article !

Comment pouvons-nous améliorer cet article ?


Ce tutoriel ne marche plus à 100%? Prévenez-moi pour que je le mette à jour!

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *