Subversion (en abrégé svn) est un système de gestion de versions, distribué sous licence Apache et BSD. Il a été conçu pour remplacer CVS. Ses auteurs s'appuient volontairement sur les mêmes concepts (notamment sur le principe du dépôt centralisé et unique). Le 14 février 2010, SVN est devenu officiellement un projet de la Fondation Apache, prenant le nom d'Apache Subversion.
man svn man svnadmin svn help <option>
à compléter avec fichiers de configurations réels.
Emplacement | Fonction |
---|---|
/etc/… | blabla |
ajouter svn mv, cp, status, revert, switch, mkdir, add, list
Avec svn log
, repérer le numéro de révision du fichier qu'on souhaite restaurer à une révision précédente.
cd <emplacement_fichier_a_restaurer> svn update -r <num_revision> <nomfichier>
Méthode pour récupérer un dossier malencontreusement supprimé dans une arborescence svn même après avoir réalisé un commit. Commencer par déceler la révision à laquelle le dossier existait à l'aide de la commande svn log et des commentaires écrit lors des commits.
Récupération par copie direct sur le serveur du dossier “Plateforme” présent dans la révision 180 et le copier au même endroit, là ou il a été supprimé.
svn cp -m"recup dossier Plateforme" -r197 svn://localhost/project/Center/Plateforme/ svn://localhost/project/Center/Plateforme/
Lors de conflit sur un fichier nommé desc.txt on dispose de 4 fichiers.
desc.txt desc.txt.mine desc.txt.r200 desc.txt.r250
Le fichier desc.txt est le fichier avec les modifications automatique de svn. Le merge automatique de svn sur les lignes qui sont en conflits. Le .mine correspond au fichier qu'on avait en local. Le .r200, le fichier correspondant à la révision 200. Le .r250, le fichier correspondant à la révision 250.
Corriger le problème dans le fichier desc.txt à l'endroit du conflit positionné entre les chevrons («« »»>). Un checkin à ce stade ne fonctionne pas parce que le fichier est noté “C” car est marqué “en conflit”.
Pour voir l'état “C”.
svn status
Pour enlever ce marquage entrer la commande suivante.
svn resolved desc.txt
Les fichiers mentionnés plus haut (.mine, .r200 et .r250) sont automatiquement supprimés et le fichier passe à l'état modifié.
On peut checkiner à présent comme d'habitude.
svn ci -m"correction du conflit" desc.txt
Export sans informations de gestion de version.
svn export svn://localhost
Import de données non versionnées dans une base svn.
svn import -m"import initial" svn://localhost
Permet de repartir sur une base à révision 1 après un export.