2009-04-03 5 views
2

J'ai découvert un problème aujourd'hui concernant la prise en charge de Subversion pour la sensibilité à la casse des noms de fichiers. J'ai commis une classe nommée 'ClassOne.file'. Une autre personne a commis un autre fichier, 'Classone.file'. Les deux fichiers sont exactement les mêmes à l'exception du nom de fichier.Problème de Subversion avec sensibilité à la casse

Lorsque je fais la mise à jour SVN, il est indiqué erreur, "impossible d'ajouter, le fichier existe déjà". J'ai remarqué que dans le dépôt SVN, les deux fichiers existent, mais je ne peux pas mettre à jour ma copie locale. Il s'arrête là. Ce que je fais est de supprimer l'un d'entre eux et seulement alors la mise à jour de SVN reprend comme d'habitude. Le serveur SVN fonctionne sur Linux, mais notre PC fonctionne sous Windows.

Mes questions:

  • Est-ce une configuration standard dans SVN?
  • Comment éviter ce genre d'erreur (autre que de forcer tout le monde à utiliser la même convention de dénomination de fichier)?

Nous vous remercions de votre aide!

+0

La racine du problème est que MS-Windows, et par conséquent certains développeurs, sont insensibles à la casse. – starblue

Répondre

7

http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/case-insensitive.py

Exactement ce dont vous avez besoin :)

débarasse que dans votre

/svnroot/<repos>/hooks/pre-commit 
fichier

et BAM, problème ne sera jamais répéter.

En réponse au commentaire

Vous devez éditer les crochets pour votre dépôt; Les copies de travail n'ont pas de crochets. Localisez votre référentiel sur votre système de fichiers, puis sous un dossier appelé "hooks" vous verrez un fichier appelé "pre-commit.tmpl" juste renommer celui-ci en "pré-commit" et le modifier en ajoutant le code ci-dessus :)

+0

Grrr, 2 secondes de retard: -) ... – MartinStettner

+0

Merci! Comment est-ce que je fais cela dans Eclipse? Je ne trouve aucun menu/option pour régler les crochets. –

+0

Votre lien n'existe plus. En effet, je ne peux trouver aucune trace de case-insensitive.py sur le web, bien que j'ai trouvé ce qui semble être son prédécesseur, check-case-insensitive.pl. Ironiquement, [ce lien] (http://www.subversionary.org/howto/using-check-case-insensitive-py-on-windows) sur la version de Python commence par cet avertissement: _Ne plus utiliser ce script, utilisez case-insensitive.py qui est beaucoup plus efficace_. Même le dernier manuel (1.7) TortoiseSVN a un lien cassé sur ce sujet dans la section 4.14.4: http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/. Soupir ... –

Questions connexes