IDE, SVN ve sitelere bastırıyor!

4 Cevap php

Benim uygulamalarını güncelleyerek ve küçük bir yardım ve tavsiye arayan im düşünme!

Ben Joomla, osCommerce, drupal vb çalıştırmak sitelerinde bir sürü iş yapmak ve bu yüzden şu anda her site benim xampp kurulumu üzerinde kendi klasörü vardır özel bileşenler / eklentileri ve kesmek vb bir sürü oluşturduk. Ne yapmak istiyorsunuz (örneğin) bir Joomla kurulum varsayılan kurulum var ve ben değişiklik güncellemeleri yaptığınızda, neredeyse otomatik güncellemesi gibi joomla içeren tüm diğer klasörleri, güncellemeleri bir şey yapabilirim?

Im aynı zamanda başkalarıyla işimi paylaşmak için unfuddle olarak Aptana IDE daha SVN hizmeti kullanarak bakarak, ama SVN kullanarak yukarıdaki yapmak olası eğer ben önce ve emin SVN kullanılmış değil mi?

Bu bir ana / temel öğe üzerinde çalışmak ve farklı bireysel sitelerinde çok sayıda korumak zorunda kalmadan, hem yerel hem güncellemeleri ve gerçek sunucularına güncellemeleri göndermek için edebilmek için çok iyi olurdu.

Önerileriniz?

4 Cevap

Evet, SVN bu amaç için mükemmel bir araç olacaktır. Kaynak kontrolü: kodunuzu (özel bir Joomla bileşeni örneğin) saklayın. Eğer bu bileşeni kullanmak istediğiniz her yerde, sadece canlı sitenizde bir checkout veya export o klasörün yapın. Burada depo yapısı tek bir yol var:

unfuddle.com/myRepo/trunk/com_myComponent
unfuddle.com/myRepo/trunk/com_anotherComponent

SSH üzerinden canlı sunucuya oturum açın ve bu komutu çalıştırın:

> cd path/to/joomla/components
> svn co http://unfuddle.com/myRepo/trunk/com_myComponent

Kodunuzu değiştirmek istediğiniz zaman, değişiklikleri işlemek ve sonra tekrar sunucuya oturum ve çalıştırın:

> cd path/to/joomla/components
> svn up com_myComponent

Bu gerçek bir yararı olduğunu bir güncelleştirme yapmak ve bir şeyler kırmak gerektiğini, her zaman bilinen son "iyi" sürümüne geri dönebilirsiniz.

Farklı sunucularda ise bu süreci otomatize gelince, şans dışında olabilir. Aynı sunucu üzerinde birden fazla dağıtımları için, size oldukça kolay her site / bileşen için yukarıdaki komutları çalıştırmak için bir kabuk komut dosyası yazabilirsiniz. Bu tam otomatik olması gereken, hatta 02:00 falan her gün bu komut dosyasını çalıştırmak için bir cron işi kurmak olabilir - ben şahsen manuel yaklaşımı ile sopa ediyorum, ama yine de bir seçenek.

SVN depoları yerel çalışmalar için, ben TortoiseSVN (Windows üzerinde iseniz) bakarak tavsiye ederim: SVN ile çalışmak için en basit ve en kolay yoludur.

Şeyleri otomasyonu için, bunun için SVN kanca kullanabilirsiniz. Orada bir post-commit kanca, böylece bir taahhüt yok, her zaman, sizin kanca komut son kodu almak için bir SVN güncelleme yapmak için diğer makineleri söyleyebilirdi.

Daha fazla bilgi için, bkz: Version Control with Subversion - Implementing Repository Hooks.

Ben sizin durumunuz için iyi bir cevabım yok, ama ben Subversion kendisi tarafından cevap olduğunu sanmıyorum.

This Question 'projeler' arasında paylaşım için Subversion'ın mekanizmaları hakkında bazı endişeleri giderir.

Subversion kesinlikle bu bulmacanın kaynak kodu yönetimi bölümünü işleyebilir. Otomatik bir dağıtım, iyi ben başka bir araç kullanmak istiyorum.

Capistrano içine bak. Ben bunu birkaç kez kullandım ve bunu anlamaya bir kez, oldukça iyi. Raylar amaçlayan ama bir deposundan kodu almak ve farklı sunucular üzerinde dağıtmak için gereken her şey için çalışması gerekir.