2

カピストラーノを使用して Rails アプリをデプロイします。デプロイされている git リビジョンを public_html/revision.txt に書き出すにはどうすればよいですか?

4

4 に答える 4

5

他の誰かがこれをしなければならない場合:

    namespace :deploy do
      # ...

      desc "Write the current version to public_html/revision.txt"
      task :write_revision, :except => { :no_release => true } do
        run "cd #{latest_release}; git rev-parse HEAD > #{latest_release}/public/revision.txt"
      end

      # ...
    end

    after "deploy:update_code", "deploy:write_revision"
于 2012-09-07T20:38:50.513 に答える
2

これを deploy.rb に追加しました:

execute "git rev-parse --abbrev-ref HEAD > public/revision.txt"
execute `"git log --oneline -1 >> public/revision.txt"`

次に、内部管理ページに次のものがあります。

File.read("#{Rails.root}/public/revision.txt")

必要に応じて public の代わりに Rails.root に入れることができます。

于 2016-07-01T22:47:45.003 に答える
1

logコマンドを使用して最新のコミットIDを取得し、それをファイルにリダイレクトできます。

git --no-pager log -1 --pretty=format:%H > public_html/revision.txt
于 2012-09-07T20:02:13.000 に答える