2009-10-08 7 views
6

Ma situation est la suivante: j'ai un serveur Subversion installé chez moi, et nous utilisons également Subversion dans la société où je travaille. Au travail, nous utilisons le modèle lock/edit/unlock (principalement parce que nous passons de Visual SourceSafe et c'est plus facile pour le moment). Pour l'instant, ceci est réalisé en définissant la propriété 'needs-lock' sur tous les fichiers ajoutés (en utilisant la section auto-props du fichier de configuration du client SVN sur chaque machine client). Cependant, je ne veux pas utiliser ce modèle pour mon serveur SVN domestique (je préfère la méthode de modification/fusion/validation), donc actuellement après avoir transféré quoi que ce soit de mon PC de travail à mon serveur domestique, je devez supprimer manuellement la propriété needs-lock de tous les fichiers que j'ai ajoutés.Subversion: comment supprimer une propriété lors de la validation

Est-il possible de configurer le client SVN pour appliquer cette propriété uniquement aux fichiers validés sur un serveur particulier? Ou suis-je dans le mauvais sens: devrais-je utiliser des crochets sur le serveur de travail pour ajouter cette propriété, au lieu du client?

Toute aide ou conseil est très apprécié.

EDIT: Apparemment, vous ne pouvez pas le faire sur le serveur (ou du moins il est fortement recommandé de ne pas le faire).

+0

YUCK! Commencez à vous battre au travail pour que cela change! –

+0

Je sais ... Je sais ... –

+0

Le pire, c'est que je l'ai mis en place ... –

Répondre

3

La fonctionnalité d'autoprops subversion est configurée dans le fichier config de votre client SVN. Il existe également un fichier de configuration servers distinct qui prend en charge les paramètres spécifiques au serveur, mais vous ne pouvez malheureusement pas y substituer les autoprops.

Je vous suggère de faire deux versions de config: Config.Accueil et config.work. Ensuite, écrivez un script shell (par exemple un fichier .bat) qui copie l'un de ceux-ci sur config. Cela devrait vous permettre de basculer rapidement et facilement entre les deux configurations.

+0

C'est un bon plan. –

7

J'ai aussi écrit un petit fichier de commandes Windows pour supprimer récursivement la propriété needs-lock de tous les dossiers où il avait déjà été défini. Mettez ces lignes dans un fichier texte:

svn propdel svn:needs-lock -R -q "%1" 
svn commit "%1" -m "Removed needs-lock" 

Enregistrer comme remove-needs-lock.bat, et ajouter son emplacement à votre variable d'environnement PATH. Ensuite, vous pouvez exécuter:

remove-needs-lock c:\workingcopyfoldername 

Et puis, tous les fichiers ne nécessitent plus de verrou pour éditer.

Questions connexes