2010-02-03 11 views
6

Binärdateien (unter Linux) haben keine Erweiterung, so dass ich sie nicht mit Mustern ausschließen kann. So, wenn ich SVN add verwenden, um ein Verzeichnis hinzufügen will ich so etwas wieSo machen Sie SVN ADD ignorieren Binärdateien

$ svn add recursion_vector/ 
A   recursion_vector 
A   recursion_vector/rec_vec.cxx 
A   recursion_vector/rec_vec.h 
A (bin) recursion_vector/rec_vec 

Hier rec_vec ist die ausführbare bekommen Ich mag würde auszuschließen. SVN erkennt es offensichtlich als binär. Kann ich Subversion nun sagen, dass alle Binärdateien ignoriert werden sollen?

+0

Nur eine Bemerkung: alle Binärdateien Ignoriert andere Binärdateien ignorieren würde, auch. Wie zum Beispiel Symbole, die Sie möglicherweise in das Repository aufnehmen möchten. – Sam

+0

Ja, aber damit könnte ich leben, weil ich normalerweise nur Code einchecke und nie Icons. – fuenfundachtzig

Antwort

2

Dies ist ein bisschen ausführlicher, weil sie finden verwendet:

find [TARGET-DIRECTORY] \(-executable -type f \) -prune -o -print | xargs svn add --depth empty

das Ziel-Verzeichnis Passing zu finden, die das Verzeichnis rekursiv finden Sie alle Inhalte auszudrucken, außer für ausführbare Dateien (\(-executable -type f \) -prune). Ohne -type f würde Find auch Verzeichnisse bereinigen, da diese normalerweise das Ausführungsbit oder "Suchbit" gesetzt haben.

Die --depth empty Option auf add sagt Svn, nicht selbst ein Dateiobjekt recurse, da find die Rekursion behandelt.

Wenn Sie das Ergebnis mögen, können Sie dies in eine Shell-Funktion einfügen, mit der Sie Argumente für [TARGET-DIRECTORY] übergeben können.

Danke,

Zachary

0

Dies ist nicht genau das, was Sie wollen (und Sie vielleicht schon diese Antwort wissen) ... aber trotzdem:

Sie Muster ausschließen setzen können einige Dateien auf den Dateinamen basiert zu ignorieren. Weitere Informationen in der großen SVN Buch:

http://svnbook.red-bean.com/en/1.1/ch07s02.html#svn-ch-7-sect-2.3.3

Other than that, könnte es möglich sein, etwas zu tun mit Haken begehen, aber ich habe keine Erfahrung mit den ...

Viel Glück!

1

Können Sie eine Musterübereinstimmung einrichten, um Dateinamen auszuschließen, die keine . enthalten?

+0

Die beste Idee bisher :) Natürlich würde es auch auf Dateien namens README und ähnliche, aber ich habe diese nicht, also vielleicht sollte ich mit diesem gehen. – fuenfundachtzig

+0

@fuenfundachtzig Sie könnten auch Dateinamen anpassen, die kein '.' in ihnen haben und auch' [a-z] + '. Wenn Sie mit README-Dateien arbeiten, können sie alle '[A-Z] +' ... sein. – masher

Verwandte Themen