Gestion des modules Go

Gérez les dépendances Go avec évaluation des risques et support du versioning. Analyse les mises à jour disponibles et facilite les changements de version Go.

Spar Skills Guide Bot
DevOpsIntermédiaire
39009/03/2026
Claude CodeCursorWindsurf
#go#dependency-management#module-update#version-control#build-tools

Recommandé pour


name: manage-mod description: Go モジュールを管理する。「依存関係を更新」「go mod」「モジュール更新」「依存関係確認」「go.mod 更新」「パッケージ更新」「依存関係を整理」「Go バージョン変更」などで起動。更新可能なモジュールの一覧、危険度評価、段階的更新、バージョン管理をサポート。 allowed-tools: [Read, Bash, Glob, Grep]

Manage-Mod

Go モジュールを管理します。依存関係の更新、危険度評価、Go バージョン管理をサポート。

引数

  • --check: 更新可能なモジュールを確認のみ(更新しない)
  • --version: Go バージョンを確認・変更
  • --set <version>: Go バージョンを指定したバージョンに変更
  • --help: ヘルプを表示

依存関係更新

1. 現在の依存関係を確認

cat go.mod
go list -m -u all

2. 更新可能なモジュールを分析

各モジュールについて以下を評価:

| 危険度 | 基準 | 説明 | |--------|------|------| | 🟢 安全 | パッチバージョン (v1.2.3 → v1.2.4) | バグ修正のみ、後方互換性保証 | | 🟡 注意 | マイナーバージョン (v1.2.0 → v1.3.0) | 新機能追加、非推奨警告あり | | 🔴 危険 | メジャーバージョン (v1.x.y → v2.0.0) | 破壊的変更、API の変更 |

3. 更新実行

# バックアップ作成
cp go.mod go.mod.backup
cp go.sum go.sum.backup

# 特定モジュールの更新
go get -u github.com/xxx/yyy@latest

# すべての依存関係を更新
go get -u ./...

# go.mod の整理
go mod tidy

# 更新後の確認
go build ./...
go test ./...

4. 結果レポート

✅ 依存関係更新完了

更新されたモジュール:
- github.com/xxx/yyy: v1.2.0 → v1.3.0 (🟡 マイナー)
- github.com/aaa/bbb: v2.1.0 → v2.1.1 (🟢 パッチ)

更新をスキップ:
- github.com/ccc/ddd: v1.0.0 → v2.0.0 (🔴 メジャー - 手動確認推奨)

推奨アクション:
1. `go test ./...` でテストを実行
2. メジャーバージョンアップは個別に検討

Go バージョン管理

1. 現在のバージョンを確認

# go.mod の Go バージョンを確認
grep "^go " go.mod

# システムの Go バージョンを確認
go version

2. バージョン変更(--set オプション使用時)

# go.mod の Go バージョンを変更
go mod edit -go=1.22

# 依存関係の整理
go mod tidy

3. 互換性チェック

# ビルド確認
go build ./...

# テスト確認
go test ./...

Go バージョンの主な変更点

| バージョン | 主な変更 | |-----------|---------| | 1.24 | tool ディレクティブ、go run キャッシング改善 | | 1.23 | イテレータ関数(range over func) | | 1.22 | ループ変数スコープ変更、PGO デフォルト有効化 | | 1.21 | 標準ライブラリの min/max/clear 関数 | | 1.20 | カバレッジプロファイル、PGO サポート |

重要な注意事項

  • ✅ メジャーバージョンアップは慎重に
  • ✅ 更新後は必ずビルドとテストを実行
  • ✅ 依存関係更新は独立したコミットに
  • ✅ CHANGELOG を確認
  • ❌ 後方互換性に注意(Go バージョンを上げると古いバージョンでビルドできない可能性)
Skills similaires