web-dev-qa-db-fra.com

Manière correcte d'ajouter svn: executable

J'ai quelques fichiers qui ont été exécutables avant que svn les ajoute. Ils ont la propriété svn: executable définie. Maintenant, quelques autres fichiers ont été archivés sans que le bit exécutable ne l’ait pas, et je veux définir la propriété svn: executable:

$ svn propset svn:executable on *.cgi

Ensuite, je vérifie le statut et même les fichiers avec svn: exécutable ont été modifiés:

$ svn diff
Property changes on: a.cgi
___________________________________________________________________
Modified: svn:executable
   - 
   + *


Property changes on: b.cgi
___________________________________________________________________
Added: svn:executable
   + *

a.cgi ne doit pas être modifié. Je veux ajouter le svn: exécutable bit à définir de la même manière que sur les autres fichiers, mais je ne peux pas trouver la commande pour le faire.

101
Jake

Vous avez raison d'utiliser les commandes d'édition de la propriété svn. La propriété est svn: executable.

Pour ajouter le "bit exécutable" dans svn

svn propset svn:executable on <list of files>

Pour supprimer le "bit exécutable" dans svn

svn propdel svn:executable <list of files>

La documentation SVN pour cela se trouve ici.

Pour ce qui est de ne pas modifier les exécutables, vous ne modifiez pas l'exécutable (une somme de contrôle le vérifiera), mais vous modifiez le référentiel SVN. Rappelez-vous que SVN révise les systèmes de fichiers, pas seulement les fichiers; ainsi, une modification des bits d'autorisation augmentera le numéro de révision SVN, même s'il ne s'agit que d'une modification des propriétés d'un fichier (et non d'une modification du fichier lui-même).

158
Edwin Buck