Nasıl `bul` görmezden alabilir miyim .dizinleri svn?
Ben sık sık ne olursa olsun kaynak kodu dosya silme arama için find
komutunu kullanın. Subversion depoları .svn/text-base/
dizinleri her dosya çoğaltır, çünkü rahatsız edici, basit aramalarım çok sayıda yinelenen sonuçlar elde sonunda. Örneğin, messages.h
messages.cpp
birden fazla dosya içinde özyinelemeli uint
aramak istiyorum:
# find -name 'messages.*' -exec grep -Iw uint {}
./messages.cpp: Log::verbose << "Discarding out of date message: id " << uint(olderMessage.id)
./messages.cpp: Log::verbose << "Added to send queue: " << *message << ": id " << uint(preparedMessage->id)
./messages.cpp: Log::error << "Received message with invalid SHA-1 hash: id " << uint(incomingMessage.id)
./messages.cpp: Log::verbose << "Received " << *message << ": id " << uint(incomingMessage.id)
./messages.cpp: Log::verbose << "Sent message: id " << uint(preparedMessage->id)
./messages.cpp: Log::verbose << "Discarding unsent message: id " << uint(preparedMessage->id)
./messages.cpp: for (uint i = 0; i < 10 && !_stopThreads; i) {
./.svn/text-base/messages.cpp.svn-base: Log::verbose << "Discarding out of date message: id " << uint(olderMessage.id)
./.svn/text-base/messages.cpp.svn-base: Log::verbose << "Added to send queue: " << *message << ": id " << uint(preparedMessage->id)
./.svn/text-base/messages.cpp.svn-base: Log::error << "Received message with invalid SHA-1 hash: id " << uint(incomingMessage.id)
./.svn/text-base/messages.cpp.svn-base: Log::verbose << "Received " << *message << ": id " << uint(incomingMessage.id)
./.svn/text-base/messages.cpp.svn-base: Log::verbose << "Sent message: id " << uint(preparedMessage->id)
./.svn/text-base/messages.cpp.svn-base: Log::verbose << "Discarding unsent message: id " << uint(preparedMessage->id)
./.svn/text-base/messages.cpp.svn-base: for (uint i = 0; i < 10 && !_stopThreads; i) {
./virus/messages.cpp:void VsMessageProcessor::_progress(const string &fileName, uint scanCount)
./virus/messages.cpp:ProgressMessage::ProgressMessage(const string &fileName, uint scanCount)
./virus/messages.h: void _progress(const std::string &fileName, uint scanCount);
./virus/messages.h: ProgressMessage(const std::string &fileName, uint scanCount);
./virus/messages.h: uint _scanCount;
./virus/.svn/text-base/messages.cpp.svn-base:void VsMessageProcessor::_progress(const string &fileName, uint scanCount)
./virus/.svn/text-base/messages.cpp.svn-base:ProgressMessage::ProgressMessage(const string &fileName, uint scanCount)
./virus/.svn/text-base/messages.h.svn-base: void _progress(const std::string &fileName, uint scanCount);
./virus/.svn/text-base/messages.h.svn-base: ProgressMessage(const std::string &fileName, uint scanCount);
./virus/.svn/text-base/messages.h.svn-base: uint _scanCount;
Nasıl find
.svn
dizinleri görmezden söyleyebilir miyim?
Güncelleme: version 1.7 SVN istemci yükseltme eğer bu artık bir sorundur.
Değişiklikleri Subversion 1.7 sunulan önemli bir özelliği tek bir yere çalışan kopya meta veri depolama merkezine. Çalışma kopyası, her dizini
.svn
Bir dizin yerine, 1.7 Subversion çalışma kopyalarını 12 ** sadece bir dizin çalışma kopyası kök var. Bu dizin (diğer şeyler arasında) bu çalışma kopyası için meta veriler Bozulma ihtiyaçları içeren SQLite destekli bir veritabanı içerir.
CEVAP
neden sadece değil
find . -not -iwholename '*.svn*'
-Yüklem, sahip olduğu her şeyi olumsuzlar .her yerde yolda svn.
Senin durumunda olurdu
find -not -iwholename '*.svn' -name 'messages.*' -exec grep -Iw uint {} \;
Nasıl YouTube API YouTube video küçük ...
Nasıl JavaScript para olarak format nu...
Nasıl bir dize dönüştürmek için yığın ...
Nasıl kalıcı olarak Kişisel satır numa...
Nasıl, asenkron yerine senkron AJAX is...