5

環境が起動したときに現在のリポジトリのgitバージョンをプルするこのコードのチャンクがあります(environment.rb)。

APP_VERSION = `git describe --always --long` unless defined? APP_VERSION

それでは、サイトをプルアップして、特定のページに移動し、サイトにあるバージョンが正しいものであることを確認しましょう。このコードはEngineYardで機能していましたが、Herokuでは、アプリの起動時に次のように表示されます。

fatal: Not a git repository (or any of the parent directories): .git

git describeherokuでの実行は可能ですか?

4

1 に答える 1

6

私はあなたができるとは思わない。を使用してアプリをHerokuにデプロイすると、アプリがgit pushリポジトリに配置され、gitリポジトリなしでコードのクリーンチェックアウトが実行されるように見えます。heroku run bashコマンドを使用していろいろと調べて、そこに何があるかを確認できます。これが私のアプリの1つにあるものです:

$ heroku run bash
Running `bash` attached to terminal... up, run.1
~ $ ls -a
.    bin      config.ru  Gemfile       lib         public    .rspec  TODO.txt
..   .bundle  db         Gemfile.lock  Procfile    Rakefile  script  vendor
app  config   doc        .gitignore    .profile.d  README    spec

.gitディレクトリがないため、gitコマンドは機能しません。

現在デプロイされているバージョンだけを確認したい場合は、アプリのHerokuダッシュボードの[アクティビティ]タブで確認できます。(https://dashboard.heroku.com/apps/[your app name]/activity)しかし、gitバージョンをアプリケーションコードに組み込んで、アプリの一部として表示できるようにする方法がわかりません。

于 2012-11-19T20:50:09.773 に答える