0Pricing
Swift Academy · レッスン

セマンティックバージョニングとリリースへのタグ付け

セマンティックバージョニング (MAJOR.MINOR.PATCH)を適用し、注釈付きの git tags を作成して、SwiftPMの依存関係でバージョンを明確に指定します。

「セマンティックバージョニングとリリースへのタグ付け」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン2/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全3レッスンが含まれています。

SemVerとは

SemVer = MAJOR.MINOR.PATCHです。

  • MAJOR: 互換性を壊す変更
  • MINOR: 後方互換性のある新機能
  • PATCH: バグ修正、ドキュメント更新、小さな改善

バージョンを上げるタイミング

上げるバージョンを選びます:

  • 公開APIを削除または名前変更する → MAJOR
  • 互換性を壊さずにAPIを追加する → MINOR
  • 内部リファクタリングやバグ修正 → PATCH

Gitタグのワークフロー

注釈付きタグ(例: v1.2.0)を作成してプッシュします。SwiftPMはGitタグを使ってパッケージを解決します。

// Create an annotated tag and push it so SwiftPM can resolve it.
// Prereqs: tests pass; CHANGELOG updated.
//
//   git add -A
//   git commit -m "Release 1.2.0: new JSON helpers"
//   git tag -a v1.2.0 -m "v1.2.0"
//   git push --follow-tags
//
// Note: use the "v" prefix consistently (e.g., v1.2.0).
print("Tagged v1.2.0 and pushed with --follow-tags")

SwiftPMのバージョン要件

Package.swiftで、from:、exact:、.upToNextMajor、.upToNextMinorのいずれかの要件形式を選びます。

// Package.swift (illustrative dependency specs)
// dependencies: [
//   // Compatible with 1.x (>=1.2.0, <2.0.0)
//   .package(url: "https://example.com/Lib.git", from: "1.2.0"),
//
//   // Exact pin:
//   // .package(url: "https://example.com/Lib.git", exact: "1.2.3"),
//
//   // Up to next major (same as "from:"):
//   // .package(url: "https://example.com/Lib.git", .upToNextMajor(from: "1.2.0")),
//
//   // Up to next minor (>=1.2.0, <1.3.0):
//   // .package(url: "https://example.com/Lib.git", .upToNextMinor(from: "1.2.0"))
// ]
print("Declare dependency ranges clearly: from/exact/upToNextMajor/upToNextMinor")

CHANGELOGの習慣

バージョンごとに変更内容を要約します。ユーザーが安全にアップグレードできるよう、BREAKINGな変更は明確に示します。

// Keep a concise CHANGELOG with headings per version.
//
// # Changelog
// ## [1.2.0] - 2025-09-19
// - Add JSON.encodePretty(_:) (non-breaking)
// - Fix crash in Parser.parse() on empty input
//
// ## [2.0.0] - 2026-01-10
// - BREAKING: Renamed Parser.parse(_:) -> Parser.run(_:)
print("Write a short, helpful CHANGELOG for each release")

プレリリースのヒント

プレリリース(例: 2.0.0-beta.1)は不安定な状態であることを示します。ユーザーにデフォルトで選択されたくない場合は、タグを付けないようにします。タグの命名規則は一貫させます。

SemVerでバージョンを上げるルール

確認: MAJORを上げるのはどのような場合ですか?

まとめ

まとめ: SemVer(MAJOR.MINOR.PATCH)を使用し、v1.2.0のような注釈付きGitタグを作成します。Package.swiftで依存関係のバージョン範囲を指定し、明確なCHANGELOGを管理します。

よくある質問

「セマンティックバージョニングとリリースへのタグ付け」レッスンは無料ですか?

はい。「セマンティックバージョニングとリリースへのタグ付け」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全3レッスンが含まれています。

「セマンティックバージョニングとリリースへのタグ付け」で何を学びますか?

セマンティックバージョニング (MAJOR.MINOR.PATCH)を適用し、注釈付きの git tags を作成して、SwiftPMの依存関係でバージョンを明確に指定します。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Swift Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/3です。

「セマンティックバージョニングとリリースへのタグ付け」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSwift Academyレッスンでコードを書いて実行できますか?

はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ライブラリパッケージと実行可能パッケージ
  2. セマンティックバージョニングとリリースへのタグ付け
  3. swift testとアーティファクトによるCIの基礎
← Swift Academyに戻る