13

問題:

pythonプロジェクトでバージョン管理を設定する必要があります。
リリースを作成するたびに、VCS で生産ブランチと開発ブランチをマージします。
プロジェクトのバージョンを設定する際に最小限の修正を行い、プロセスを自動化する必要があります。

私がやったこと:

私の次のステップ:

私は私のリリースに必要です:

  • 発売日
  • リビジョン
  • バージョンナンバー

major.minor.changesetバージョンにリリース日を保持するとかなり長くなるので、リリース番号の形式を作成する予定です。version.pyファイルを作成したい:

MAJOR_VERSION = 1
MINOR_VERSION = 1
RELEASE_DATE = '28 .08.2013 '


def get_revision ():
    ...

def get_version ():
   ....

そして、必要なときにそこからバージョンをインポートし (ただし、誰かが適切な日付を設定するのを忘れる可能性があることを恐れています)、CHANGE.TXTリリースの変更を説明するファイルをその横に置きます。

質問:

pythonプロジェクトでバージョンを設定する方法と、スキームを簡素化するためにアイデアを変換する方法を知りたいです。

4

1 に答える 1

5

2 つの関連する問題: (1) バージョン管理を含む、モジュール レベルで追跡するメタデータの適切な選択と、その他の有用な情報。(2) そのメタデータを表す良い方法は何か。

モジュール メタデータの一般的なアプローチについては、http://epydoc.sourceforge.net/manual-fields.html#module-metadata-variablesで説明されています。これは基本的に、 、 、 、 、および という名前の定数を使用__author__する__authors__こと__contact____copyright__意味__license____date__ます__version__。これらは一般的に使用されるため、適切な規則です。

次に、__version__定数を設定する方法 (バージョン管理の優れたモデルはセマンティック バージョニングです) については、http: //semver.org/ を参照してください。基本的に1.2.3、互換性のない API の変更がある場合はメジャー チェンジ、新しい機能がある場合はマイナー チェンジ、バグ修正がある場合はマイクロ パッチ チェンジというスタイルを使用します。これも一般的に使用されるため、適切な規則です。

于 2013-08-28T12:00:24.350 に答える