Enregistrement de données dans votre dépôt

Deux moyens sont à votre disposition pour enregistrer de nouveaux fichiers dans votre dépôt Subversion : svn import et svn add. Nous abordons ici la commande svn import et, plus loin dans le chapitre, la commande svn add, lorsque nous passerons en revue une journée typique avec Subversion.

svn import

La commande svn import est un moyen rapide de copier une arborescence non-suivie en versions dans le dépôt, créant des dossiers intermédiaires si nécessaire. svn import ne nécessite pas de copie de travail et vos fichiers sont immédiatement propagés dans le dépôt. Ce moyen est utilisé essentiellement quand vous avez une arborescence dont vous voulez suivre les changements dans votre dépôt Subversion. Par exemple :

$ svnadmin create /var/svn/nouveau-depot
$ svn import mon-arborescence file:///var/svn/nouveau-depot/un/projet \
             -m "Import initial"
Ajout         mon-arborescence/truc.c
Ajout         mon-arborescence/machin.c
Ajout         mon-arborescence/sous-repertoire
Ajout         mon-arborescence/sous-repertoire/bidule.h

L'exemple précédent copie le contenu du dossier mon-arborescence dans le dossier un/projet dans le dépôt :

$svn list file:///var/svn/nouveau-depot/un/projet
truc.c
machin.c
sous-repertoire/

Notez qu'après la fin de l'import, l'arborescence d'origine n'est pas transformée en copie de travail. Pour commencer à travailler, vous devez extraire grâce à svn checkout une copie de travail toute fraîche de l'arborescence.

Organisation conseillée de votre dépôt

Bien que Subversion vous permette d'organiser votre dépôt de la manière dont vous le voulez, nous vous recommandons de créer un dossier appelé trunk pour stocker la « ligne principale » du développement, un autre dossier branches qui contiendra les copies alternatives (ou branches) et un dossier tags pour les versions étiquetées. Par exemple :

$ svn list file:///var/svn/depot
/trunk
/branches
/tags

Vous en apprendrez plus sur les étiquettes et les branches dans le Chapitre 4, Gestion des branches. Pour plus de détails et pour voir comment gérer plusieurs projets, reportez-vous à la section intitulée « Agencement du dépôt », et à la section intitulée « Stratégies d'organisation d'un dépôt » pour en savoir plus sur les répertoires racines d'un projet.