Table des matières
SVN
Ignorer le versionning d'un fichier dans un dépôt SVN
On peut avoir besoin d'ignorer le versionning d'un fichier précis dans un SVN, par exemple un fichier contenant un login/mot de passe.
Pour se faire, créer un fichier “sample” du fichier, comme par exemple un fichier “connect_db.sample.php” contenant des faux logins/mot de passe qui pourront être stockés dans le SVN. C'est ce fichier qui va être dans le SVN et non le fichier “connect_db.php” réellement inclus. Il faudra ensuite copier le fichier “connect_db.sample.php” en le baptisant “connect_db.php” et adapter son contenu.
Pour ignorer un fichier, il faut ajouter une propriété sur le répertoire pour ignorer ce fichier :
- Aller dans le repertoire en question dans votre arborescence SVN :
cd include/
- Ajouter le fichier à la liste des fichiers ignorés du répertoire courant. Noter le . a la fin de la commande qui est important :
svn propset svn:ignore connect_db.php .
- Vérifier que la liste de fichiers ignorés est correcte :
svn propget svn:ignore .
- Vous devriez voir un “I” a coté du fichier ignoré en utilisant la commande suivante :
svn status --no-ignore
- Il ne reste ensuite plus qu'a faire un commit du changement de propriété, comme par exemple avec la commande suivante :
svn commit -m "svn:ignore du fichier connect_db.php"
Ignorer le versionning de plusieurs fichiers dans un dépôt SVN
Dans le cas ou vous souhaiter ne pas versionner plusieurs fichiers d'un certain répertoire :
- Aller dans ce répertoire :
cd trunk/secret
- Ajouter les fichiers à la liste des fichiers ignorés grâce à la commande suivante qui va ouvrir un éditeur de texte :
svn propedit svn:ignore .
- Ajouter la valeur suivante dans ce fichier pour exclure tous les fichiers .txt du versionning de ce répertoire :
*.txt
Pour ignorer plusieurs pattern de fichiers, il suffit d'en mettre un par ligne, comme par exemple :
*.txt
*.out
- Enregistrer et quitter l'éditeur
- Vérifier que les propriétés sont correctes :
svn propget svn:ignore .
- Vous devriez voir un “I” a coté du fichier ignoré en utilisant la commande suivante :
svn status --no-ignore
- Il ne reste ensuite plus qu'a faire un commit du changement de propriété, comme par exemple avec la commande suivante :
svn commit -m "svn:ignore des fichiers *.txt du répertoire secret"
Une autre solution est d'éditer un fichier contenant les exclusions (toujours une par ligne), comme par exemple /tmp/ignore.txt puis de mettre en place l'exclusion grâce à la commande :
svn propset svn:ignore -F /tmp/ignore.txt .