Depoları / PPA'ları kullanın, çünkü sizi hem sağlam, hem de güvenlik önlemleriyle birlikte güncel tutacaklar.
Bu çoğunlukla doğrudur. Örneğin, python-django
sahip olduğum şekilde kurarsanız, güvenlik güncellemelerini alırsınız. Bu iyidir, çünkü sadece en üstte kalmak zorundasınız, ancak güncellemeleri zorlamadan önce hala test etmelisiniz (her seferinde testler iyi olsa da).
Kullanırsanız, pip
güncellemeleri kontrol etmeyeceğinizi iddia edebilirsiniz.
Kullanım pip
doğru "kararlı" sürümlerini kullanabilirsiniz böylece.
Buna hiç şüphe yok: Depolar gerçek dünyanın gerisinde kalıyor. Django 2.0'dır, ancak Ubuntu'nun LTS sürümünün repoları (çoğu insan sunucular için sadıktır), Python 2 ile Ubuntu 16.4 lts'ta yalnızca 1.8 elde edersiniz, ancak yine de güvenlik güncellemelerini alırsınız.
pip
her zaman size en son verir. Onları kendin güncellemelisin.
Repo kullanılan bir Python kurulumunu yükseltme kabus olabilir
Ubuntu'yu bir sonraki sürüme yükselttiğinizde birçok paketi yükseltir. Pek çok şey değişir. Django'da bunun kod uyumsuzluklarına, kısıtlamalara dikkat etmeniz gerektiği anlamına geldiğini biliyorum ... Ama aynı diğer Python kodları için de geçerlidir.
Aynı şey için de geçerlidir, pip
ancak pip
sizinle aynı anda bir şey yapabilirsiniz. Sorunlara neyin neden olduğunu biliyorsunuz, bu yüzden düzeltmeyi nerede arayacağınızı biliyorsunuz.
pip
+ virtualenv
şeyleri ayrı tutmanıza izin verir
virtualenv
taşınabilir, küçük Python ortamlarına sahip olmanızı sağlar. Bu, aynı makinede yan yana çalışan farklı Python ortamlarına sahip olmanızı sağlar.
Belli bir nimet, çevreyi, kodu yönettiğiniz şekilde yönetebileceğiniz gibi bakım için görünmektedir. Ortamı VCS'de bile saklayın ... ama on iki farklı virtualenv
s'ye sahip olmanızın, kontrol etmeniz ve güncellemeniz gereken on iki ortam anlamına geldiğini unutmayın .
Düzenleme: Lucid'den Precise'a almak için sunucudaki korkunç bir dizi yükseltmeden sonra, karışık bir Apt + pip (nr 1 ve 2) durumundan saf pip + virtualenv (nr. 4) durumuna geçtim. Site başına bir sanalenv yerine, bir düzine kadar site arasında paylaşılan bir tane var. Bu şimdilik çalışıyor.
Ayrıca pip ile kurulan paketlerin durumunu kontrol eden küçük bir senaryo yazmak zorunda kaldım. Güncellemeler varsa bunları manuel olarak uygulamam gerekir (bu, yerel olarak sanal bir sanal ortamda bunları test ettiğim için iyidir). Tüm bunlar hala başlangıçta olduğundan biraz daha acı verici ama uzun vadede daha iyi.