git サブモジュールの更新
各サブモジュールは .gitmodules 内の *-pin フィールドを介してタグまたはコミットに固定されています。
以下のプロセスに従って、1つ以上のサブモジュールをターゲットバージョンに更新してください。
引数
更新する1つ以上のサブモジュール(パスまたは名前)。 更新可能なサブモジュールは .gitmodules で宣言されており、以下が含まれます。
themes/docsy、Docsy テーマcontent-modules/*、OpenTelemetry サブモジュール
ターゲットバージョン指定子(各サブモジュールまたはすべてに対して):
- 特定のタグまたはコミット
- 最新のタグ付きリリースの場合は
latest - デフォルトブランチの先頭の場合は
HEAD
プロセス
npm run update:submoduleを実行します。タグを取得し、各サブモジュールをリモートのデフォルトブランチの先頭に切り替えます。 これにより、次のステップでピン値をローカルに決定できるようになります。
各サブモジュールについて、サブモジュール内から git コマンドを実行し、ターゲットバージョンから新しいピン値を決定します。
特定のタグまたはコミット: そのまま使用しますが、
git rev-parse --verify <tag-or-commit>で存在を検証してください。 有効な場合、対応する SHA が出力されます。有効なタグの一覧を確認するには、
git tag --listを実行してください。最新リリース:
git describe --tags --abbrev=0HEAD:
HEADの SHA1
HEADを含むコミットのピンの場合:git describe --tags<commit>が成功した場合、その出力をピンとして使用します。 これは最も近いリリースを伝えるためです。 たとえば、ca090204ではなくv1.23.0-11-gca090204となります。- それ以外の場合は、
<commit>の SHA1 を使用します。
.gitmodules 内のサブモジュールの
*-pin値を編集します。npm run pin:submoduleを実行してサブモジュールを新しいピンに切り替え、報告されたリビジョン(git submoduleでも確認可能)がピンと一致することを確認します。.gitmodulesとサブモジュールの gitlink への変更をコミットします。 単一モジュールの更新の場合は「Update<submodule>to<version>」のようなコミットメッセージを使用し、それ以外の場合は同様のメッセージを使用します。 ここでコミットしておくことで、次のステップでサブモジュールが以前にコミットされた gitlink にリセットされるのを防ぎます。npm run prepareを実行してサブモジュールの依存関係を更新します。 結果として生じた変更をコミットし、必要に応じて前のコミットにアメンドしてください。
検証:
- 簡易的な検証には、
npm run buildを実行し、エラーや(予期しない)警告なしに成功することを確認します。 - 包括的な検証には、
npm run testを実行し、エラーなしにパスすることを確認します。