38

Capistrano を使用して、Git で特定のコミット SHA を展開用にターゲットにするにはどうすればよいでしょうか? それは次のようなものでなければなりません

cap deploy --version=<sha targeted>

多くの検索の後、これに対する答えを見つけることができないようです。

4

4 に答える 4

63

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
于 2009-05-27T21:34:38.957 に答える
17

molfの答えはうまくいきませんでした(capistrano 2.11.2を使用)。次のように、ブランチの代わりに「リビジョン」を使用する必要がありました。

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy
于 2012-08-17T17:05:56.213 に答える
14

カピストラーノ 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
于 2015-06-10T09:24:59.647 に答える
1

ask :branch, 'master'

入力を求めるプロンプトが表示されますが、return キーを押すとデフォルトで「master」になります。

于 2016-05-13T22:57:16.303 に答える