SORU
2 Aralık 2009, ÇARŞAMBA


Git kullanarak, nasıl bir şube bir dosyayı görmezden ama başka bir şube olarak kabul edilen var mı?

14* *dağıtma olduğum bir projem var. Kaynak kodu ağacı mp3 dosyaları (web sitesi yoğun ilişki yaşadığım bir kayıt projesi için olacak) bir sürü içerir.

Bunun için kaynak kodu github koymak istiyorum ama github serbest hesaplarına 300 MB sınırı vardır. Mp3 dosyaları bir demet benim limiti 50 MB kullanmak istemiyorum. Belli ki, .gitignore dosyayı onları benim repo uzak tutmak için ekleyebilirim.

Ancak, git push heroku kullanarak heroku için dağıtmak. Mp3 dosyaları bu heroku için düğmeye şube dağıtılan elde bulunması gerekir.

İdeal olarak, bu github için ısrar ettiğimde, MP3 dahil değildir .gitignore yerel ana dal olarak mp3 dosyaları için istiyorum. Sonra MP3 yerine kararlı göz ardı ettiği yerli üretim Dalı devam ederdim. Dağıtmak için üretime ana birleştirme ve üretim şube heroku için itin istiyorum.

Bu çalışma hakkı alamıyorum.

Burada yapmaya çalışıyorum ne bir örnek...

$ git init git-ignore-test
$ cd git-ignore-test
$ echo "*.ignored" >> .gitignore
$ git add .gitignore && git commit -m "Ignore .ignored files"
$ touch Foo.ignored

Bu noktada, Foo.göz ardı usta benim şube yok sayılır, ama benim proje kullanabilmesi için hala mevcut.

$ git checkout -b unignored
$ cat /dev/null > .gitignore
$ git add Foo.ignored .gitignore && git commit -m "Unignore .ignored files"

Şimdi bu dosyaları istediğim gibi işledi, bir şube var. Usta benim şube için geri geçiş yaptığınızda, ancak, Foo.göz ardı gitti.

Neyse daha iyi bir yol için herhangi bir öneriniz bu ayarlama var mı?

Edit: sadece netleştirmek için, mp3 dosyaları sitesini yerel (ya da şube) kullanarak çalıştırdığımda site çalışır, böylece her iki Dalı hediye olmasını istiyorum. Ben sadece dosyaları basarım yani bir şube ihmal de alındı github istiyorum. Genellikle .gitignore iyi çalışıyor bu tarz şeylerde (yani tutan bir yerel kopyasını bir dosya yok almak dahil itmek için bir uzaktan), ama ne zaman ben geçmek için şube ile dosyaları kontrol etti ve sonra tekrar şube ile dosyaları göz ardı, dosyaları yok.

CEVAP
28 EKİM 2010, PERŞEMBE


Etkili farklı dalları için excludesfile kamu github ve heroku dağıtım için kullanımı hakkında bir blog yazısı yazdım.

Burada hızlı ve kirli:

$ git branch public_viewing
$ cd .git/
$ touch info/exclude_from_public_viewing
$ echo "path/to/secret/file" > info/exclude_from_public_viewing 

sonra .git/config dosyasına aşağıdaki satırları ekleyin:

[core]
excludesfile =  info/exclude


[branch "public_viewing"]
excludesfile =  info/exclude_from_public_viewing

Şimdi tüm genel şeyler info/exclude dosya ve şube özel info/exclude_from_public_viewing olduğunu görmezden geliyor

Bu yardımcı olur umarım!

http://cogniton-mind.tumblr.com/post/1423976659/howto-gitignore-for-different-branches

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dan Gately

    Dan Gately

    13 AĞUSTOS 2006
  • Helen Bradley

    Helen Bradle

    4 Mart 2008
  • MofoHifi Records

    MofoHifi Rec

    15 HAZİRAN 2006