2010-02-03 12 views
6

Pliki binarne (pod Linuksem) nie mają rozszerzenia, więc nie można ich wykluczyć za pomocą wzorców. Tak więc, gdy używam SVN add dodać katalog dostanę coś takiegoSposób tworzenia plików SVN ADD z ignorowaniem plików binarnych

$ 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 

Tutaj rec_vec jest wykonywalny chciałbym wykluczyć. SVN oczywiście rozpoznaje go jako binarny. Czy mogę teraz powiedzieć Subversion, aby ignorowała wszystkie pliki binarne?

+0

Just a uwaga: Ignorując wszystkie pliki binarne ignoruje inne pliki binarne, too. Jak na przykład ikony, które możesz chcieć dołączyć do repozytorium. – Sam

+0

Tak, ale to jest coś, z czym mógłbym żyć, ponieważ normalnie sprawdzam tylko kod, a nigdy ikony. – fuenfundachtzig

Odpowiedz

2

Jest nieco rozwlekły, ponieważ używa znaleźć:

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

Przechodząc elementu docelowego katalogu znaleźć, znaleźć spowoduje przeszukanie katalogu drukując całą zawartość z wyjątkiem plików wykonywalnych (\(-executable -type f \) -prune). Bez -type f find również wyczyściłoby katalogi, ponieważ zwykle mają ustawiony bit wykonania lub "bit wyszukiwania".

Opcja na add mówi, że svn nie sam rekursuje obiekt pliku, ponieważ find obsługuje rekursję.

Jeśli podoba ci się wynik, możesz umieścić go w powłoce, która pozwoli ci przekazać argumenty za [TARGET-DIRECTORY].

Dziękuję

Zachary

0

To nie jest dokładnie to, co chcesz (i być może wiesz już tę odpowiedź) ... ale tak czy owak:

Można ustawić wykluczyć wzory ignorować niektórych plików opartych na nazwach plików. Więcej informacji w wielkiej książce SVN:

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

Poza tym, być może uda się coś zrobić z popełnienia haki, ale nie mam doświadczenia z tymi ...

powodzenia!

1

Czy można skonfigurować dopasowanie do wzorca, aby wykluczyć w nich nazwy plików, które nie mają wartości .?

+0

Jak dotąd najlepszy pomysł :) Oczywiście, byłby też uruchamiany z plików README i podobnych, ale ja ich nie mam, więc może powinienem to zrobić. – fuenfundachtzig

+0

@fuenfundachtzig można również dopasować nazwy plików, które nie mają w sobie '.' i również dopasować' [a-z] + '. Jeśli pracujesz z plikami README, wszystkie mogą być "[A-Z] +" ... – masher

Powiązane problemy