2010-01-24 6 views
7

J'essaye d'ajouter un projet d'iPhone existant à un compte de subversion sur unfuddle.com.svn propget svn: ignore. ne retourne rien, mais svn ignore évidemment mes fichiers

Tout semble lisse sauf pour certains fichiers .a qui sont ignorés. Je sais qu'ils sont ignorés parce que je ne les vois pas dans le statut svn à moins que j'utilise le drapeau --no-ignore.

Quand je lance

svn propget svn:ignore . 

Je ne vois aucun résultat. Pour vous assurer que je n'étais pas fou je couru

svn propget --xml svn:ignore . 

et obtenir ce

<?xml version="1.0"?> 
<properties> 
</properties> 

Ce qui signifie qu'il n'y a aucune entrée dans la propriété ignorer?

Comment puis-je savoir d'où provient cet ignorant?

+1

Que se passe-t-il (c'est-à-dire ce qui est retourné) lorsque vous essayez de 'svn ajouter un fichier explicitement? – Ether

+0

Cela me semble une question SuperUser ... – Noldorin

+1

Je pensais que les problèmes avec les outils de développement étaient un jeu équitable sur SO. – GraemeF

Répondre

12

Nouveau jour. Effacer la tête.

Merci pour l'aide, cela m'a certainement mené dans la bonne direction.

La réponse est qu'il existe une liste global-ignore par défaut qui est intégrée dans subversion elle-même, pas les fichiers de configuration, d'où provenait l'ignorance * .a.

Les ignores globales dans mon fichier de configuration ressemblait à ceci:

#global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo 
# *.rej *~ #*# .#* .*.swp .DS_Store 

Je compris cela était très bien, parce que je ne voulais pas ignorer quoi que ce soit. Je me suis trompé parce que subversion applique ses ignorances globales par défaut, à peine documentées. Je l'ai changé à cela, noter l'exclusion de « * .a »

global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.pyc *.pyo 
    *.rej *~ #*# .#* .*.swp .DS_Store 

A ce stade, * .a fichiers ne sont plus ne tient pas compte, et mon fichier .DS_Store est toujours ignoré, et tout va bien dans mon monde .

Comme suggéré par GraemeF, propget ne récupère pas les valeurs globales pour svn: ignore. Comme l'a suggéré Ether, vous pouvez ajouter des fichiers ignorés en les nommant explicitement.

Le meilleur lien que j'ai trouvé ici: http://svn.haxx.se/users/archive-2009-02/0725.shtml

Ce poste me dit qu'il ya une valeur par défaut non vide pour global-ignores qui est utilisé si global-ignores n'est pas défini dans le fichier de configuration .

+0

Merci, cela a fonctionné pour moi! Si vous utilisez Syncro SVN, allez dans Options> Configuration globale de l'exécution> Editer le fichier 'config'. Effectuez les modifications ci-dessus, enregistrez, redémarrez et actualisez. Vous pouvez également voir les fichiers ignorés dans l'onglet Copie de travail en cliquant sur Afficher les fichiers ignorés sous l'icône Paramètres en haut à droite de la barre d'outils. – Bushrod

1

Vous pouvez également avoir des motifs globalement ignorés définis dans votre fichier de configuration Subversion, donc peut-être *.a est ignoré là. Voir le Config section du livre Subversion.

+0

J'ai vérifié ~/.subversion/config, mais le paramètre "global-ignore" est mis en commentaire par défaut. Je pensais que l'ensemble ignoré dans la config serait retrouvé avec "svn propget svn: ignore." – CornPuff

+0

Je n'ai pas vérifié, mais je ne pense pas que 'propget' les inclue parce qu'ils ne sont pas des propriétés sur le répertoire, en tant que tel. – GraemeF

2

Vous pouvez explicitement ajouter le fichier via svn add <filename> s'il n'est pas détecté automatiquement.

Les fichiers de configuration Subversion peuvent avoir des fichiers ignorés ("global-ignores") - ils sont généralement en ~/.subversion/config et /etc/subversion/config, mais il existe également d'autres emplacements; voir http://svnbook.red-bean.com/en/1.4/svn.advanced.confarea.html.

Quelle commande utilisiez-vous pour ajouter les fichiers? Si c'était svn add *, pourrait-il être aussi simple que le fichier commençant par .?

Questions connexes