, ben yazdım Aksi takdirde manuel çalışma ne olacak bana yardım etmek için bir perl betiği. Bazı isimleri tanıdık isimler verdim, bu yüzden onları doğru sırada çalıştırmayı hatırlıyorum. Sadece SVN altında DEV'im var. Bu senaryo ile her defasında bir ÜRETİM ortamı yaratıyorum. Bu şekilde 2 kod dalının korunması konusunda endişelenmem gerekmiyor. Ben SVN kullanıyorum
yüzden benim DEV kodunun yeni çıkış dizinini (gibi/tmp/filanca) seçin. Çok uzun sürmeyecek.
İsteğe bağlı adım 0: diff veritabanı yapıları
mysqldump -d -u USER -pPASS mydotcom > production.sql
mysqldump -d -u USER -pPASS mydotcom_dev > development.sql
vim -d production.sql development.sql
Bazen eklentileri tabloları katacak ve bu olduğunu gösterecektir. Aksi halde, bazı tabloları değiştirmek ve SQL deyimlerini kopyalamak için değmezse, tablolar içinde yapılan değişiklikleri (eklenti) tekrar oynatırım.
adım 1 clean: Komut dosyası geçerli dizindeki tüm dosyaları siler, DEV dalının yeni svn çıkışını yapar. Bu yeni ödeme, ÜRETİM koduna dönüştürülecek ve webroot'una kopyalanacaktır.
2. adım: perl, bir wim dosyasını çalıştırır ve wpconfig.php dosyasında veritabanı adının yerini alır. Arama ve değiştirme, perl'de kolayca yapılabilir.
system('vim -c "%s/define(\'DB_NAME\', \'mydotcom_dev\'/define(\'DB_NAME\', \'mydotcom\'/g | w | q" wp-config.php');
Yerel dosya yüklemeleri dizinini kaldırın (bu yüzden ÜRETİM'in bir tanesinin üzerine yazmayız). wpcontent/uploads Standart bir kurulum olduğuna inanıyorum.
diğer bir buluntu ve örnek
vim -c "%s/dev\.mydot\.com/www.mydot.com/g | w | q FILENAME.php
3 yüklemek adım için, benim DEV url sahip proje içindeki tüm metin dosyaları değiştirin. Güvenli olması için wpcontent/karşıya yüklemeleri dircopy() ile yedekleyin. Bu temizlenmiş dizinin bir yönergesini ÜRETİM webrootuna yapın. şöyle Webroot altında tüm .svn dizinleri kaldırın:
find /PRODUCTION/WEBROOT -ignore_readdir_race -name .svn -exec rm -fr {} \; >/dev/null 2>&1
Şimdi DEV kodu tüm kodlanmış URL'leri değiştirerek ve SVN'de değil yüklemeler dizinde etrafında güvende tutmak sizin ÜRETİM koduna dönüştürülmüştür. Hatta senin için durup apache'yi de başlatabilirsin. Umarım çözümüm probleminizi çözmenize yardımcı olur.
tamam, ben wordpress'i anlıyorum. belki bunu daha net yapmalıydım. Bu soru özellikle iş akışı ile ilgili ve spesifikasyonlarla bir cevap arıyorum. Ben komut dosyaları yazmam gereken durumlarda umuyoruz, insanlar – Tony