2009-10-20 9 views
5

Ma structure de répertoire se présente comme suit:Comment configurer récursivement svn status pour cacher les fichiers ignorés?

project/ 
    app1/ 
    app2/ 
    settings.py 

à partir du répertoire project, j'ai couru svn propedit svn:ignore . Cela n'ignorer les fichiers à l'intérieur directeur du projet hors de ses sous-répertoires. Je peux réexécuter le svn ignore à partir de chacun des dossiers et cela fonctionnera. Y at-il une commande svn interne ou une option qui peut le faire récursivement pour moi ou devrais-je recourir à un script pour effectuer l'ignorer dans chaque sous-dossier de mon projet?

J'ai mis mes fichiers être ignorés:

*.pyc 
*.swp 

Cependant, chaque fois que je fais un svn status, je vois encore les fichiers ci-dessus. Y a-t-il un moyen de dire svn status pour cacher récursivement les fichiers ignorés?

+1

'svn status' ne cache les fichiers ignorés. Comment avez-vous mis ces fichiers à ignorer? –

+1

Avez-vous vérifié la modification à ignorer? Je ne suis pas sûr que ça marchera jusqu'à ce que vous le fassiez. – pivotal

+0

J'ai modifié ma question pour plus de précisions. –

Répondre

5

svn propedit ne fonctionne que sur une cible à la fois. TortoiseSVN dispose d'une option pour appliquer des propriétés de manière récursive, mais si vous ne l'utilisez pas ou si vous n'utilisez pas une autre interface graphique avec cette option, vous devez le faire avec un script.

Cependant, ce que vous devez vraiment faire est de global-ignores pour ignorer les deux modèles de fichiers que vous avez mentionnés. Selon the most recent documentation, *.pyc et *.swp sont inclus dans les ignores par défaut pour Subversion 1.6, mais vous pouvez les ajouter si votre fichier config n'en a pas.

L'emplacement de votre fichier config dépend de la plate-forme; voir le lien de la documentation ci-dessus. global-ignores est dans la section miscellany.

+0

Le lien de la doctrine est mort. Je crois que c'est la version actuelle et l'emplacement d'intérêt. http://svnbook.red-bean.com/fr/1.7/svn-book.html#svn.advanced.props.special.ignore Section pertinente - "Sur les systèmes de type Unix, cette zone apparaît sous la forme d'un répertoire nommé .subversion Sur les systèmes Win32, Subversion crée un dossier nommé Subversion, généralement dans la zone Application Data du répertoire de profil de l'utilisateur (qui, d'ailleurs, est généralement un répertoire masqué). " – RyanfaeScotland

+0

Sous Windows, tapez% APPDATA% dans la barre d'adresse de l'explorateur à prendre là. – RyanfaeScotland

2

Seul le problème avec les ignorés global est que vous avez besoin d'une extension de fichier. Dans certains programmes, il y a des fichiers sans extension (ou il y a juste plusieurs extensions). Un exemple sont les fichiers tmp dans CakePHP.

Je fixe par cette (en shell bash Linux):

cd app/tmp 
for a in `find . -type d |grep -v svn`; do svn propset svn:ignore '*' $a; done 
Questions connexes