2013-05-07 19 views
5

Yüklenmiş tüm görüntüleri geliştirme sırasında depolayan bir medya klasörüne sahibim ve django (1.5.1) projemi heroku üzerindeki bir dev sunucusuna aktarıyorum. Medya klasörü içinde benHeroku git butonuna basarak dosyaları siliyor mu?

media/ 
    # cache and images were commited before .gitignored was added 
    cache/ # store thumbnails 
    images/ # store images 
    .gitignore 

sahip .gitignore Sorun Heroku için itmek git'e zaman, bütün test yüklemeleri git ile yok olur ise

* 
!.gitignore 

sahiptir. Bununla başa çıkmanın bir yolu var mı?

cevap

9

Bu, Git ile değil, daha çok Heroku ile ilgili bir sorun değildir. Heroku'nun file system geçici olduğunu ve dağıtıcılar arasında sıfırlanır. Yüklenen dosyaları depolamak için Amazon S3 gibi bir hizmet kullanın.

+0

Sorunumun çözüleceğinden emin değilim. Heroku'daki yeni dosyaların silinmesini istemiyorum. Git medya klasöründe ne olduğu umurumda değil. – Derek

+0

@Derek: Bu onları silip süpüren gitmez; Heroku'nun geçici bir dosya sistemi vardır (geçici dosyalar dağıtıcılar arasında silinir). Kalıcı dosya depolama için S3 gibi bir şey kullanın. – mipadi

+2

@ Derek mipadi haklı. Heroku'nun nasıl konuştuklarını açıklayacağım. Yeni bir dizin oluştururlar, gitmeden yeni dizine (bu yeni sürümünüz olur) git, sonra dünyayla yüzleşmeye hazır olduğunda (tüm çalışmalar uygulamaya başladı), sadece çalışma dizinlerini değiştirecek. Yeni sürüm dizininize link. Bu, konuşmanın doğru yolu olmalıdır. Ancak bu, eski sürümünüzde yüklenen ve depolanan tüm dosyaların yeni sürümünüz için geçerli olmayacağı anlamına gelir. Yüklediğiniz dosyaları saklamak ve bunları bir DB'de takip etmek için Amazon S3 kullanın. – JoshEmory