質問

Capistrano を使用して、Git の特定のコミット SHA をデプロイメントのターゲットにするにはどうすればよいでしょうか?それは次のようなものであるはずです

cap deploy --version=<sha targeted>

たくさん検索してもこれに対する答えが見つからないようです。

役に立ちましたか?

解決

Capistrano 2.9 から 3.0 の場合:

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

Capistrano の古いバージョンの場合, 、次のようにして、特定の git commit/tree/branch/tag をデプロイできます。

cap -s branch=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

場合によっては、引数として環境を指定する必要がある場合もあります。 production はほんの一例です。

cap production -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

他のヒント

molfの答えは(カピストラーノ2.11.2を使用して)私のために動作しませんでした。私はこのように、代わりに支店の「改正」を使用していた。

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

カピストラーノ 3

あなたの中で deploy.rb または次のようなステージ固有のファイル config/deploy/production.rb

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

これにより、特定の git リビジョンを指すことができます。SHA だけでなく、実際のリビジョンに解決されるもの (例:git タグ、アノテーション付きタグ、またはブランチ)。

コマンドラインで設定して使用します。 REVISION 環境変数、例:

bundle exec cap production deploy REVISION=80655da8d80aaaf92ce5357e7828dc09adb00993

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

尋ねる:ブランチ、 'マスター'

あなたがリターンを押すと、

「マスター」に入力しますが、デフォルトのプロンプトが表示されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top