Ben Phing yerel ya da uzaktan kumanda kullanıyor musunuz?

6 Cevap php

Ben Phing ile ilgili bir sorum var. Üretim makineden ssh ile ben bir uygulamayı dağıtmak için benim yerel kalkınma makinede kullanabilirsiniz yoksa ben diyorlar? Ben Eran Galperin gelen adımları yapmak için nerede emin değilim (What is your preferred PHP deployment strategy). Ben dağıtım komut ile bir acemi değilim. Yani affedici :)

Marco

6 Cevap

Eğer yerel olarak çalıştırmak biri, uzak sunucuya ssh bulunuyor ve sonra uzaktan komut başladı - Genellikle iki açılma komut olacak.

Yerel komut svn export, içeriğini zip ve ilk uzak sunucuya (SCP) onları itmek bir yapabilir. Uzaktan komut dosyası, vb göç hizmetlerini yeniden başlatma gibi şeyler yapardı

Temel strateji, yerel makinede bir yapı (iyi, temelde online web uygulamasının bir kopyasını koyabilirsiniz) oluşturun ve sonra sunucu üzerinde dağıtmak olduğunu.

Eğer yerel makinede çalıştırmak ve PHPing üretim sunucusuna bağlanmak ve web sitesi kuracak. :)

Phing çeşitli şekillerde uygulanabilir.

Dağıtmak için nasıl direktifleri yoksa, en iyi yolu, bu amaçlı olarak çalışıp çalışmadığını kontrol etmek ve sonra üretken yapı oluşturmak, yerel kopyadan "test yapı" oluşturmak için genellikle ilk.

Eğer geliştirme ortamında bazı kurallara uymak zorunda bazı durumlarda kolayca bu taleplerini karşılamak için Phing uyarlayabilirsiniz.

Ben bir Phing dağıtmak kodu geliştirdi ve sana anlattığım yollardan hem de kullandım. Sürece Phing kütüphane ve bağımlılıkları yerel ya da her iki şekilde yapabilirsiniz, uzak makinede yüklü gibidir ve aslında ortamlarda herhangi birinden çalıştırmak edebilmek için bir avantajdır.

Ne benim için çalışıyor, diğer insanlar için çalışmak olmayabilir mümkün yani her kişi kendi projelerini / stüdyoları ihtiyaçlarına ve gereklerine mikrokozmos içinde yaşadığını benim deneyim ayrıntılı edelim, ama akılda tutmak.

Ben dağıtım genellikle aynı şekilde gerçekleşmesi için her zaman gereken bir iş için çok önemli olduğunu düşünüyorum. Dağıtımlarını yapan insanlar çok sayıda var, o zaman kötü alışkanlıkları veya farklılaşmaya işlemleri için kolay ve hatalar olabilir zaman bulunuyor. Herkes aynı prosedürü kullanarak ise, daha sonra hatalar için çok daha düşük bir potansiyel var çünkü PHNG ile otomatik dağıtımlar kullanışlı. Phing tüm geliştiricilerin yapmak zorunda çünkü kolay sıkı prosedürleri takip için yapar "Phing dağıtmak" veya "Phing yapı" ya da ne var gibi basit bir komut çalıştırmak.

Bu işlemler yerel kalkınma makinelerde uyulması yanı sıra evreleme, test, üretim sunucularında olması için tıpkı insanlar gibi, makineleri makineden makineye farklılık küçük ideosyncracies olabilir çünkü Şimdi geri asıl soruya gidiyor, o da yararlı olur. Phing ile, kurumsal makineleri (kodunuzu gücü ve niyet bağlı ama ideali karşılamak için kolaylaştıran bir biçimde yaşamlarını phing) herhangi aynı sonuçları olacak bir komut dosyası gelişebilir. Eğer geliştirme kutusundan Phing yapı çalıştırırsanız Yani, ideal size test kutusu veya üretim sunucudan çalıştırmak durumunda aynı etkiye sahiptir. Eğer yerleştirmesi herhangi bir makinede aynı şekilde çalıştırmak varsa, (bunlar, test veya yerel dev kutusuna dağıtmış zaman farklı olmayacak gibi), dağıtımdan sonra ortaya çıkan sorunları dağıtmak prosedürlerin bir sonucu değildi emin olabilirsiniz .

Ben onu üretime dağıtmak için kullandığınız aynı prosedür ile benim yerel makinede benim kod dağıtmak edebilmek için gerçekten çok güzel.

Bildiğim kadarıyla ne yapacağını iyi olduğu gibi, ben yukarıda neden hepsi değil, demek? Eğer yerel olarak çalıştırın, o zaman uzaktan çalıştırabilirsiniz. Dağıtmak prosedürler güçlü ise, o zaman sonuç aynı olacaktır.

Sen her ikisine de yapabilirsiniz. Eğer testler geliştirmek ve sadece genel kod iyi durumda olmasını sağlamak gibi yerel aracını çalıştırabilirsiniz. Sunucu otomasyon (bunu seçerseniz) aynı zamanda belgeleri oluşturmak, testler ve test değişiklik veya üretim kurulumları dağıtabilirsiniz.

Yerel yapıyor CI şey sağlamak için düzenli olarak çalışırken süreç, sunucu kurulum üzerinde durdu alacak şansını azaltır yanlışlıkla üzerinden kırıldı.