2012-12-19 20 views
13

xCode 4.5.2 ile çalışıyorum ve indeksleme yapıyorsanız, herşeyi durdurmanız ve işini yapmasına izin vermeniz gerektiğini fark ettiniz, aksi takdirde bataklık olacaksınız. Proje büyük olduğundan ve indekslemenin uzun zaman aldığı için bir sorun haline geldi ve bunu sürekli olarak yapacak. Bir örnek projenin tamamını indekslemişti, proje üzerinde biraz çalıştıktan sonra projenin neredeyse% 75'ini yeniden indekslemeye başladı. Kaynak kontrol ile kontrol ettim ve üzerinde çalıştığım süre içerisinde projede herhangi bir değişiklik yapılmadı.İndekslemeden xcode'u durdurma

Dizinlemeyi tamamen durdurmanın veya indeksleme miktarını azaltmanın bir yolu var mı? Endekslemenin kapatılmasında herhangi bir olumsuzluk var mı? Önceki soruları otomatik olarak tamamlamayı ve proje boyunca arama yapmayı engellediği söylendi.

cevap

25

Sadece Endekslemeye kapatmak için terminalde bu komutu çalıştırın:

defaults write com.apple.dt.XCode IDEIndexDisable 1 

özelliği tekrar açmak için bu çalıştırın:

defaults write com.apple.dt.XCode IDEIndexDisable 0 

(Not: Görünüşe bu anahtarını silmeniz gerekir Ancak değişikliğin etkili olması için sipariş, ben sadece yukarıdaki komutu kullanılır ve anahtarı)

EDIT silmeyi deneyin işe yaramazsa yukarıdaki yapıyor yüzden eğer. iyi çalıştı

Üzgünüz, sorunun bir kısmı eksik. Evet, öyle yapar ki arama hızlı çalışmıyor. Belki de otomatik tamamlama devre dışı bırakılır. Dizinleme, Xcode'un ne yaptığınızı hızlı bir şekilde hatırlamasını sağlar. Bunu kapatmak, çalışmayı biraz daha zorlaştırır, ancak yükleme süresini artırır.

+0

Aslında yeniden etkinleştirmek endeksleme anahtarı silmek zorunda, http://stackoverflow.com/questions/7328041/how-to- bakınız xcode-4-xcode-4 –

+0

@StephanTolksdorf'u etkinleştir, Hmm, Yukarıdaki komutu kullandım ve yeniden gayet iyi. Ama cevabımı sadece durumumda güncelledim. Teşekkürler! – Josiah

+9

Bu, Xcode 5.1'de benim için çalışmıyor gibi görünüyor. –

2

Büyük bir proje üzerinde çalışıyorsanız ve cmake ile xcodeproj dosyasını oluşturursanız, büyük ikili dosyaları eklediğinizde sorunlara girersiniz. Eğer cmake uzantıyı tanımıyorsa, onları varsayılan olarak 'sourcecode' olarak etiketler!

... ve bu ikili dosyalar daha sonra xcode ile indekslenecektir, bu da makinenizin sürekli olarak indekslenmesi anlamına gelir (ve çalışma alanını yeniden oluşturduğunuz her defasında sıfırdan başlar). Ayrıca, dosyaları bulmak işe yaramaz (sadece askıda kalıyor).

Tek bir kolay çözüm, ikili dosyalarınızı etiketlemek ve xcode'a bunları görmezden gelmesini söylemek, ör. Böyle (Aksi XCODE_EXPLICIT_FILE_TYPE desteklenmez, 3.2 ve daha yüksek CKağıt):

# fill cmake-variable with some files 
file(GLOB MYGAME_BINARIES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "binaries/*") 
# tag them as "not-sourcecode" (maybe there is sth better than 'compiled', but it worked for my purpose) 
set_source_files_properties(${MYGAME_BINARIES} PROPERTIES XCODE_EXPLICIT_FILE_TYPE "compiled") 
İlgili konular