UserInterfaceState.xcuserstateGit'in dosyamı XCode4 projemde yok saymasını istiyorum , ancak .gitignoredosyayı nereye koymalıyım ?, .gitklasörün içinde mi? yoksa dışarı mı? .gitİle aynı klasörde ProjectName.xcodeprojdosyanın
UserInterfaceState.xcuserstateGit'in dosyamı XCode4 projemde yok saymasını istiyorum , ancak .gitignoredosyayı nereye koymalıyım ?, .gitklasörün içinde mi? yoksa dışarı mı? .gitİle aynı klasörde ProjectName.xcodeprojdosyanın
Yanıtlar:
Bir olabilir .gitignoreprojenizin her dizinde.
Ancak, en iyi uygulama, .gitignoreproje kök dizininde tek bir dosyaya sahip olmak ve göz ardı etmek istediğiniz tüm dosyaları bu dosyaya şu şekilde yerleştirmektir:
ignoredFile.whatever
ignoredDirectory/*
directory/ignoredFileInsideDirectory
.svn
.gitignoreDosyayı oluşturduğunuzda, arşivde yeni olan veya değişikliklere sahip olan dosyaları yok sayma işlemi tamamlanma için bekliyor olarak gösterilmeyecektir.
Ayrıca, tüm git depolarınızı yönetecek bir global yerel git ignore dosyanız olabilir.
git config --global core.excludesfile ~/.gitignore_global
Bu alternatif, IDE ile ilgili dosyalar vb. Gibi proje ile ilgili olmayan yok sayılmış dosyalar için özellikle ilginçtir.
Git'te dosyaları yok saymak için yaklaşımlar vardır:
~/.gitignore_globalyol altında oluşturulabilir . Bu yaklaşım, işletim sistemi veya diğer herhangi bir günlük kaydı, para yatırma vb. Araçlar tarafından oluşturulan bazı dosya türlerini hariç tutmak istiyorsanız iyidir..git/info/excludedosyaya eklenebilir . Bu dosya altında belirtilen kurallar işlenmeyecektir, yani başkalarıyla paylaşılmayacaktır. Genellikle bu yaklaşım, yerel olarak oluşturulan dosyaların işlenmesini önlemek için yararlıdır. Örneğin, düzenleyiciniz tarafından oluşturulan dosyalar için..gitignoreBelirli deponuzun herhangi bir alt yolunda oluşturabilirsiniz . Bu yaklaşım genellikle yalnızca belirli bir havuzun belirli bir klasörü altında bazı dosya türlerini yok saymak için kullanılır. Bu dosyalar, diğer yollar ve diğer havuzlar tarafından sürüm kontrolüne eklenebilir.Bu nedenle, size önerim UserInterfaceState.xcuserstate, tüm depolarınızda kendi özel dosyanızı ( ) yok saymak istiyorsanız , en iyi yaklaşım global git ignore yaklaşımını kullanmaktır. Bununla birlikte, dosyanız yalnızca belirli bir depoda oluşturulmuşsa, depo başına git ignore yaklaşımını kullanabilirsiniz.
Daha fazla bilgi için bu harika blog yazısını okuyabilirsiniz . Ve orada her dile özgü git görmezden gelme kuralları burada kurulabilir . Ve bu web sitesini kullanarak belirli bir dil, araç veya işletim sistemi için genel git yok sayma kurallarını otomatik olarak oluşturabilirsiniz .
.Gitignore dosyasını proje kök dizinine koymalısınız.
.gitignoredosyayı nereye koymalıyım ?, .git klasörünün içinde mi?
.gitignoreBir .gitklasörün içinde yok .
Bununla birlikte .git/info/exclude, genellikle bir dosyayı yalnızca bu belirli depo için ( bunun gibi bir takma adla ) hariç tutmak istediğinizde, bir dosyayı yerel olarak dışlamanıza izin veren bir dosyadır :
git config alias.exclude "!sh -c 'echo \"$1\" >> .git/info/exclude' -"
git exclude UserInterfaceState.xcuserstate
Eğer bu dosyada dışlamak gerekirse bütün olarak, benzer proje Elnur Abdurrakhimov belirtilen onun cevabı , küresel kapsama alınmamıştır.
echo UserInterfaceState.xcuserstate >> ~/.gitignore
Ancak, " * .xcuserstate 'i kontrol etmemiz gerekiyor mu? " Da belirtildiği gibi , bu deponun herhangi bir kullanıcısı tarafından göz ardı edilmesi gereken bir dosya türü ise, deponun en üstünde bir .gitignore sürümü kullanırdım, şuna benzer bir içeriğe sahip:
*.xcuserstate
Bu şekilde, bu deponun herhangi bir kullanıcısı bu dosyanın var olduğunu ve oluşturulduğunu (adı ne olursa olsun) bile fark etmeyecek: hiç görünmeyecek git status.
Ya da tamamen görmezden gelebilirsinizxcuserdata/ (genel .gitignoreolarak veya genel GitHubObjective-C.gitignore dosyası gibi sürümlü bir dosyada).
Sen gerektiğini değil bir projenin içine alet özgü dosyaları koymak .gitignoredosyanın - o aracı projesinin her geliştirici tarafından kullanılmak üzere gerekli olmadığı sürece.
Bunun yerine, kişisel global .gitignoredosyanızı ana dizininizde oluşturun ve etkinleştirin:
git config --global core.excludesfile ~/.gitignore
Artık geliştirme araçlarınız tarafından oluşturulan dosyaları dosyanıza koyabilirsiniz .gitignore.