2014-09-18 16 views
8

Bir OS X makinesinde Android Studio'da Git kullanıyorum ve projede yer alan .gitignore geçersiz kılan kişisel bir .gitignore dosyasına sahip olmak istiyorum (.iml dosyalarını görmezden gelmek istiyorum). Bu yapılabilir mi ve nasıl?Sadece bana projeyi geçersiz kılan bir .gitignore dosyası ekleyebilir miyim.

# Android Studio 
.*.iml 
*.iml

Ve Ben git dosyamı git config --global core.excludesfile ~/.gitignore kullandığından emin olmak için bu komutu kullanmış, ancak çalışmıyor:

ben aşağıdaki çizgilerle benim ev dir in .gitignore dosya oluşturmak için çalıştık.

Herhangi bir fikrin var mı?

+0

AFAIK, repo'nun kök dizininde yer alan '.gitignore 'dosyasını (varsa) geçersiz kılabilirsiniz, çünkü her şeyden önce gelir. herhangi bir "çekirdek hariç tutma dosyası". – Jubobs

+0

İlgili: [Tek bir repo içinde birden fazla .gitignore dosya var mı?] (Http://stackoverflow.com/questions/9730486/can-you-have-multiple-gitignore-files-within-a-single-repo) –

+0

Hayır işe yaramadı, .iml dosyalarını görmezden gelemiyorum :( – Neigaard

cevap

9

Yeni bir .gitignore dosyası oluşturmak için, should use dosyasının .git/info/exclude dosya kurulumunu repo klonuna özgü kuralları ihmal ediyorsunuz.

Yani öncelikle proje köküne gidin ve

cd $PROJECT_ROOT 
echo "*.iml" >> .git/info/exclude 

Not çalıştırmanızı *.iml yanı tür .*.iml ait dosyaların ilgilenir, bu nedenle tek bir kural göz ardı ilgisi yapabilirsiniz deseni. Ayrıca, bu .gitignore'daki mevcut yoksayma kurallarını tamamlar ve .gitignore kurallarına uyulmaması yine de uygulanmaya devam eder. Zaten Git repo .iml dosyaları izliyorsanız görünüyor, bu nedenle bu yanı kez ana deposundan untrack edeceğini

git rm -r *.iml 
git commit -m "removed *.iml" 

Not kullanarak Git onları kaldırmayı deneyebilirsiniz


Bir itme yapıyorsun.

Aksi takdirde, bu dosyalarda yerel olarak yapılan değişiklikleri yok saymak için git update-index --assume-unchanged <filename>'u kullanabilirsiniz. Ve daha sonra, gitignore kuralları düzgün çalışmalıdır.

+0

Bu bir '.gitignore kuralını geçersiz kılmak için kullanılabilir mi? (örn:' * .jar'ı geçersiz kılmak için '! *. jar' '.git/info/exclude' kullanarak) –

İlgili konular