J'ai une ligne principale de développement et une branche. Sur la ligne principale, un nouveau répertoire a été ajouté au SVN, avec quelques fichiers dedans. Il contient aussi des répertoires appelés bin et obj, qui sont dans mon modèle global d'ignorance dans TortoiseSVN. Chaque fois que j'essaie de faire un Switch sur ma copie de travail du tronc vers la branche, j'obtiens l'erreur "Left locally modified or unversioned files". J'ai essayé de faire un diff avant le changement, et rien n'apparaît comme modifié. Après le message d'erreur, je peux supprimer manuellement le répertoire, faire un nettoyage, puis réessayer la commutation et elle se termine avec succès. La commutation dans l'autre sens ne pose aucun problème. Qu'est-ce qui se passe ici ?
Réponse
Trop de publicités?Les modèles d'ignorance ne sont évalués que pour les nouveaux fichiers. Ainsi, si certains fichiers sont déjà sous contrôle de version (comme vos répertoires bin/ et obj/), vos modèles d'ignorance n'ont aucun sens. Vous les avez localement et ils existent aussi dans le référentiel. Et svn ne peut pas décider lesquels sont les "bons".
Solution : Soit vous supprimez bin/ et obj/ du contrôle de version, soit vous ignorez le contenu de ces deux répertoires. Cette dernière solution est celle que je préfère.