Global .gitignore dosyası, sisteminizde bulunan git depolarındaki tüm dosya ve klasorleri kapsayacak şekilde tasarlanmıştır. Aynı zamanda tüm projeleri etkiler ama bu mantık vagrant oturumu içinde farklı bir şekilde çalışır. Aşağıdaki adımlar sadece sizin şu anki çalıştığınız ortamı ve projenizi etkileyecektir. Şu anda vagrant ortamınızda olduğuzu varsayalım. Global olarak göz ardı edilecek olan dosyaların daha önceden indexlenmemiş olması lazım, yoksa bu işlem o dosyalar için etkili olmaz.


Nelerin önemsenmeyeceğini kontrol edin


Aşağıda görebildiğimiz gibi .idea/ isminde önemsenmemesi gereken gereksiz bir klasör var.


vagrant@symfony:/vagrant$ git branch
* develop
master
vagrant@symfony:/vagrant$ git status
On branch develop
Untracked files:
(use "git add <file>..." to include in what will be committed)

.idea/
.DS_Store/

nothing added to commit but untracked files present (use "git add" to track)

Global .gitignore dosyası yaratın


Bir anlam ifade etsin diye dosyamiıza .gitignore_global ismini veriyoruz ama, siz istediğiniz ismi verebilirsiniz. Kişisel ana klasörünüzde dosyayı yaratın, içine .idea/ ve .DS_Store/ yazın, kaydedin ve çıkın.


vagrant@symfony:/vagrant$ echo $HOME
/home/vagrant
vagrant@symfony:/vagrant$ sudo nano /home/vagrant/.gitignore_global

Global konfigürasyon dosyasını kurun


Global konfigürasyon dosyasını "core.excludesfile", yeni .gitignore_global dosyasını hedef alacak şekilde ayarlayın.


vagrant@symfony:/vagrant$ git config --global core.excludesfile /home/vagrant/.gitignore_global

Çalışıp çalışmadığını kontrol edin


Aşağıda görebildiğimiz gibi .idea/ ve .DS_Store/ tamamen kayboldu.


vagrant@symfony:/vagrant$ git branch
* develop
master
vagrant@symfony:/vagrant$ git status
On branch develop
nothing to commit, working directory clean

Not


Eğer daha önceden yanlışlıkla .idea/ ve .DS_Store/ dosyalarını commit yaptıysanız, git rm -rf --cached .idea ve git rm -rf --cached .DS_Store komutları ile hafızayı temizlemeniz gerekir.