سؤال

أنا أتساءل كيف يمكنني استهداف التقديم محددة شا في الجيت للنشر، باستخدام Capistrano؟ يجب أن يكون مثل شيء

cap deploy --version=<sha targeted>

لا يمكن أن يبحث عن إجابة هذا بعد الكثير من البحث.

هل كانت مفيدة؟

المحلول

ل Capistrano 2.9 حتى 3.0:

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

بالنسبة للإصدارات القديمة من Capistrano, ، يمكنك نشر ارتكاب / شجرة / شجرة / تفرع معين من خلال القيام بذلك:

cap -s branch=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

في بعض الحالات، قد تكون هناك حاجة لتحديد البيئة كوسيطة كذلك. production هو مجرد مثال.

cap production -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

نصائح أخرى

إجابة مولف لم تنجح بالنسبة لي (باستخدام Capistrano 2.11.2). اضطررت إلى استخدام "المراجعة" بدلا من الفرع، مثل هذا:

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

Capistrano 3.

في الخاص بك deploy.rb أو ملف مرحلة خاصة مثل config/deploy/production.rb

set :branch, ENV.fetch('REVISION', 'master')

هذا يسمح لك أن تشير إلى مراجعة جيت محددة. تقبل شا ولكن أيضا أي شيء يحل إلى مراجعة حقيقية (مثل العلامة الجنية أو العلامة المشروحة أو الفرع).

استخدمه في سطر الأوامر عن طريق ضبط REVISION متغير البيئة، على سبيل المثال

bundle exec cap production deploy REVISION=80655da8d80aaaf92ce5357e7828dc09adb00993

bundle exec cap staging deploy REVISION=my-topic-branch

اسأل: الفرع، "ماجستير"

مطالبات الإدخال ولكن الإعدادات الافتراضية "ماجستير" إذا قمت بالضغط على العودة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top