7

重複の可能性:
リビジョン番号に相当するgitは何ですか?

同じ時期にSubversionを使用していますが、gitに切り替えたいと思います。マニュアルを読んだ後、予約は1つだけですが、svnversionを使用して、時間に関して一意、短い、単調(常に増加)の参照番号を取得します。

  • ユニークである必要があるので、記事を複製するために使用できます。
  • 短くする必要があるため、読みやすく、ファイル名、ページフッター、バージョン番号の表示に使用できます。
  • 増加する必要があるだけなので(時間に関して単調)、年齢(日付)を知らなくても、誰でも2つの記事の年齢を比較できます。

制約:上記の要件よりもブランチIDを取得できる場合は、同じブランチの記事に対してのみ満たす必要があります。(ブランチIDは、「これはリリースブランチですか?」というIDを比較できるものであれば何でもかまいません。

[ここでは、記事という言葉は、リビジョン管理システムのコンテンツから生成されるコンピュータープログラム、ドキュメント、またはその他のものを表すために使用されます。]

4

4 に答える 4

8

fork0が述べたように、非線形履歴に相当するものはありません。とにかくこれを実行して、現在のブランチのコミット数を取得できます。

git log --oneline | wc -l

これは、私のチームメイトの1人が、ビルドスクリプトで使用するビルド番号を生成するために使用するものです。

于 2012-09-18T10:40:16.597 に答える
3

いいえ、非線形の歴史にはそのようなことはありません。しかし、あなたが見るかもしれませんがgit describe、その出力は少なくとも最初の2つの基準を満たします。

于 2012-09-18T10:34:24.593 に答える
3

ビルド番号のポイントは、特定のビルドのソースコードを取得するプロセスを簡素化することです。git show -s --pretty=format:%hバージョンを一意に識別するsha1番号を取得するために使用できるため、開発者は自分のリポジトリでそれをチェックアウトできます。

ただし、sha1は増分数ではなく、ほとんどの場合、他のVCSを使用しても使用できません。必要に応じて、ビルドを段階的に番号付けし、これらの番号のタグを作成する継続的インテグレーションシステム(Jenkinsなど)を導入することをお勧めします。この場合、CIは通常、各コミットをビルドしないため、より緩やかに成長します。

また、言及されgit describeたものは、良いバージョン名を生成するために素晴らしい仕事をします。

于 2012-09-18T11:36:52.190 に答える
0

Smudge | cleanフィルターを使用すると、任意のIDを作成できます。YYYYMMDD -N(Nはこの日付のコミットカウンター)が適切な選択です。

于 2012-09-18T23:08:55.427 に答える