SORU
6 EKİM 2009, Salı


Capistrano farklı gıt branşlara dağıtmak için kullanıyor

Capistrano RoR bir uygulama dağıtmak için kullanıyorum. Bulunanla git deposu ve dallanma geliştirme yaygın olarak kullanılır. Capistrano dağıtmak kullanır.bu ayarlar için dosya, bir daldan dağıtmak için rb.

Benim sorunum şu: üstad. yeni bir şube Bir ben oluşturmak demek Dağıt başvuru ana dal olacak dosya. Ben, öyle Bir ortam test etmek için kullanılabilecek düzenleyin. Özelliği üzerinde çalışıyor bitirir, ve usta Bir şube birleştirme. Dağıt beri.Bir rb dosya ve şimdi Dağıt birleştirilmiş alır daha taze.Zaman A. ana dal başvuruları yeniden düzenlemek için rb.

Bu görünüşte gereksiz manuel düzenleme çok - parametre her zaman mevcut şube adı aynı olmalıdır. Bunun üzerine, kolay ayarları her düzenleme ve her zaman unutmak.

Bu işlemi otomatik hale getirmek için en iyi yolu ne olurdu?

Düzenleme:Meğer someone already had done exactly what I needed:

Bu sabah git deposu Şubesi dağıtmak için fırsat vardı bir basamak server ama hiç bir fikrim yoktu. Hızlı arama capistrano kaynağı ile kod yardımı olabilir göstermiştir Dağıtmak senaryomu :branch "branch_name". Ben denedim ve işe yaradı. Ben sana çapında benzer bir değişiklik yapmak lazım diye düşündüm dalları. Tabii ki, tembel bir herif olduğumu ve eğer olmasaydı orada merak ettim daha iyi bir yolu.

Eğer git, git branch komutunun çıktısını aşina oldun. yıldız şu anda işaret dalları listesi yerel makine üzerinde kontrol etti. Örneğin:

> git branch
* drupal_authentication
fragment_caching
master

Yani, ben sadece çıkış ayrıştırılmış ve aranır diye düşündüm şube olarak geçerli alındı

set :branch, $1 if `git branch` =~ /\* (\S )\s/m

Şimdi benim yerel makinede mevcut ne olursa olsun dağıtmak mümkün değilim tek, paylaşılan, dağıtmak bir script.

CEVAP
30 Ocak 2012, PAZARTESİ


A better (shorter) solution is now available:

#call with cap -s env="<env>" branch="<branchname>" deploy

set :branch, fetch(:branch, "master")
set :env, fetch(:env, "production")

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Hallucination Land

    Hallucinatio

    14 Ocak 2011
  • Malwarebytes

    Malwarebytes

    22 Temmuz 2007
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006