SORU
22 ŞUBAT 2010, PAZARTESİ


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
20 Temmuz 2010, Salı


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 {}   \;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Fuse

    Fuse

    21 Kasım 2005
  • Joshua Kywn

    Joshua Kywn

    17 Mayıs 2010
  • Photoshop Training Channel

    Photoshop Tr

    13 Temmuz 2012