2
私のPythonアプリケーションが実行されるたびに、ログが作成されます。私は実行されたコードのリビジョン番号をそのログに含めたいと思います。どうやってやるの?アクセス現在のリビジョン番号
Python 3.2、Windows TortoiseHg 2.2.2とMercurial 2.0.2を使用します。
私のPythonアプリケーションが実行されるたびに、ログが作成されます。私は実行されたコードのリビジョン番号をそのログに含めたいと思います。どうやってやるの?アクセス現在のリビジョン番号
Python 3.2、Windows TortoiseHg 2.2.2とMercurial 2.0.2を使用します。
setuptoolsを使用してアプリケーション/パッケージを配布する場合は、実行時にpkg_resources.get_distribution("my_package").version
を使用して、インストールされたパッケージバージョンにアクセスできます。
python3 setup.py egg_info -b -$(hg heads --template "{node|short}" `hg branch`) sdist
または
python3 setup.py egg_info -b -$(hg heads --template "{node|short}" `hg branch`) setup
実は、私はアプリを配布しない;:あなたのようなコマンドを使用してディストリビューションを構築する必要がありますので、しかしsetuptoolsのは、水銀リビジョンでタグ付け自動バージョンをサポートしていません。 – max
別の開発/デプロイメントパス(とにかく推奨されている方法です)を使用している場合、引き続きsetuptoolsを使用することができます展開のために。それ以外の場合は、現在のバージョンを保持し、その生成をポストコミットスクリプトにフックする自動生成ファイルを作成することだけです。 – abbot
これは 'changegroup'か' commit'フックに入れますか?そして、どの操作をすればリビジョン番号の後に(またはその内部に)名前のファイルを作成できますか? – max