Sourcetree ile yönetilen bir Bitbucket Git depom var.
İşlemek istediğim iki klasörüm var, ancak bu klasörlerdeki tüm dosyaları yok saymam gerekiyor çünkü bunlar yalnızca geçici dosyalar içeriyor.
Bunu nasıl yapabilirim?
Sourcetree ile yönetilen bir Bitbucket Git depom var.
İşlemek istediğim iki klasörüm var, ancak bu klasörlerdeki tüm dosyaları yok saymam gerekiyor çünkü bunlar yalnızca geçici dosyalar içeriyor.
Bunu nasıl yapabilirim?
Yanıtlar:
Bunu .gitignore'a ekleyin:
*
!.gitignore
.gitginore
normal bir dosyadır, sadece onu, göz ardı etmek istediğiniz içeriği dizinde oluşturun.
Sourcetree kullanıcıları için: Belirli bir klasörü yok saymak istiyorsanız, bu klasörden bir dosya seçin, üzerine sağ tıklayın ve "Yoksay ..." yapın. "Altındaki her şeyi yoksay: <İSTENMEYEN KLASÖRÜNÜZ>" seçeneğini yok sayabileceğiniz bir açılır menünüz olacak.
"Yoksay" seçeneği devre dışı bırakılmışsa, "İzlemeyi Durdur" seçeneğini seçmeniz gerekir. Bundan sonra dosya, kırmızı arkaplan simgesinde eksi işaretiyle Aşamalı dosyalara eklenecek ve Aşamasız dosyalar listesindeki dosyanın simgesi mor arka planda bir soru işareti olarak değişecektir. Şimdi Aşamasız dosyalar listesinde, "Yoksay" seçeneği yeniden etkinleştirilir. Sadece yukarıda açıklandığı gibi yapın.
Bildiğim kadarıyla Git klasörleri izlemiyor, sadece dosyaları - bu nedenle boş klasörler (veya tüm dosyaların yok sayıldığı klasörler) işlenemez. Örneğin, oluşturma sürecinizdeki bir adım nedeniyle klasörün mevcut olmasına ihtiyacınız varsa, bunun yerine oluşturma aracınızın onu oluşturmasını sağlayabilirsiniz? Veya klasöre boş, imzasız bir dosya koyabilir ve onu işleyebilirsiniz.
En az bir saat bu konuda kafamı dövdükten sonra, bu cevabı bazılarının yaptığı yorumları genişletmeye çalışmak için sunuyorum. Bir klasörü / dizini yok saymak için aşağıdakileri yapın: Projenizin kök dizininde bir .gitignore dosyanız yoksa (bu ad tam olarak ".gitignore"), dışlamak istediğiniz klasörde sahte bir metin dosyası oluşturun. Kaynak Ağacının içinde, üzerine sağ tıklayın ve Yoksay'ı seçin. Buna benzer bir açılır pencere alacaksınız.
"Altındaki her şey" i seçin ve açılır listeden yok saymak istediğiniz klasörü seçin. Bu, kök dizininizde bir .gitignore dosyası oluşturacak ve klasör özelliğini buna yerleştirecektir.
Zaten kök klasörünüzde bir .gitignore klasörünüz varsa, yukarıdaki aynı yaklaşımı izleyebilir veya .gitignore dosyasını düzenleyip hariç tutmak istediğiniz klasörü ekleyebilirsiniz. Bu sadece bir metin dosyası. Biz Windows kullanıcılarının alışkın olduğu gibi, yol adlarında ters eğik çizgi yerine eğik çizgi kullandığını unutmayın. Windows Gezgini'nde elle bir .gitignore metin dosyası oluşturmayı denedim, ancak isimsiz bir dosya oluşturmama izin vermedi (yani sadece uzantı ile).
.Gitignore ve dosya belirtiminin eklenmesinin halihazırda izlenmekte olan dosyalar üzerinde hiçbir etkisi olmayacağını unutmayın. Bunları zaten izliyorsanız, izlemeyi bırakmanız gerekir. (Klasöre veya dosyaya sağ tıklayın ve İzlemeyi Durdur'u seçin.) Daha sonra bunların yeşil / temiz veya sarı / değiştirilmiş bir simgeden kırmızı / kaldırılmış bir simgeye dönüştüğünü göreceksiniz. Bir sonraki işleminizde, dosyalar depodan kaldırılacak ve daha sonra mavi / yok sayılmış bir simgeyle görünecektir. Katkıda bulunan başka bir kişi, belirli dosyalar için Yoksay'ın neden devre dışı bırakıldığını sordu ve bunun, zaten izlenmekte olan bir dosyayı görmezden gelmeye çalıştığı için olduğuna inanıyorum. Yalnızca mavi soru işareti simgesi olan bir dosyayı göz ardı edebilirsiniz.
Başkalarının da söylediği gibi: git klasörleri değil, yalnızca dosyaları izler.
Bu komutlarla (veya eşdeğer mantıkla) bir klasörün var olduğundan emin olabilirsiniz:
echo "*" > keepthisfolder/.gitignore
git add --force keepthisfolder/.gitignore
git commit -m "adding git ignore file to keepthisfolder"
Dosyanın varlığı, arşivi kontrol eden herkesin klasöre sahip olacağı anlamına gelecektir.
Gitignore dosyasının içeriği, içindeki her şeyin göz ardı edildiği anlamına gelecektir.
Sen do not .gitignore dosyasını kendisi-görmezden gerekir . Bir kez işlendiğinde hiçbir amaca hizmet etmeyecek bir kuraldır.
VEYA
Tüm görmezden gelen tanımlarınızı aynı yerde tutmayı tercih ederseniz, projenizin kökünde aşağıdaki gibi içeriklerle .gitignore oluşturabilirsiniz:
*.tmp # example, ignore all .tmp files in any folder
path/to/keepthisfolder
path/to/keepthatfolder
ve klasörlerin var olduğundan emin olmak için
touch path/to/keepthisfolder/anything
git add --force path/to/keepthisfolder/anything
git commit -m "ensure keepthisfolder exists when checked out"
"herhangi bir şey" kelimenin tam anlamıyla her şey olabilir. Yaygın olarak kullanılan adlar .gitignore, .gitkeep, boştur.
Kaynak ağacındaki tüm klasörü yoksay.
Just Open Repository >Repository setting > Edit git ignore File and
you can rite some thing like this :
*.pdb
*.bak
*.dll
*.lib
.gitignore
packages/
*/bin/
*/obj/
Bin klasörü ve obj klasörü için şunu yazın: * / bin / * / obj /
Sourcetree'de: Belirtilen klasördeki bir dosyayı yok sayın. Sourcetree, o klasördeki tüm dosyaları yok saymak isteyip istemediğinizi soracaktır. Mükemmel!
*
Aracı tüm dosyaları görmezden ve!.gitignore
araçlar dosyayı kendisi göz ardı etmeyin