GLANZ. CREATIVE WORKS
Deploy Release

リリース

本番環境への反映は自動化(CI/CD)を基本とし、手動手順はやむを得ない場合の補助としてください。

自動デプロイ(推奨)

  1. main(または運用で定めたリリースブランチ)へのマージを行う。
  2. CI が linttestbuilddeploy を実行するのを確認する。
サーバーへ直接操作する手動デプロイは人的ミスが起こりやすいため、可能な限りスクリプト化して手順を固定してください。

ロールバック手順

問題発生時は影響を最小限にするため、状況に応じて以下の方法を選択してください。

安定タグへ戻す(タグ運用時)

git switch main
git pull
git reset --hard releaseYYYYMMDD
git push -f origin main
# CI により再デプロイ

注意: 強制プッシュは履歴を書き換えるため、運用ルールに従い事前にチームへ通知してください。

コミットハッシュで戻す

git log --oneline -10
git switch main
git reset --hard <コミットハッシュ>
git push -f origin main

履歴を残して取り消す

git log --oneline
git revert <問題のあるコミットハッシュ>
git push origin main

この方法は履歴を壊さずに問題を取り消せるため、原則として優先して検討してください。

HEAD を戻す

git log --oneline --merges
git reset --hard HEAD~1
git push -f origin main

サーバー上での手動ロールバック

# サーバーにSSH接続
cd /path/to/project
git stash push -m "backup before rollback"   # 必要なら現在の状態を退避
git reset --hard <コミットハッシュまたはタグ>
# サービス再起動
sudo systemctl restart <サービス名>

運用上の注意

  • リリース作業は可能な限り自動化し、手順書は常に最新版を保つこと
  • 強制的な履歴書き換え(git push -f)やサーバー上での手作業は最小限に留める
  • 重大インシデントの際は、影響範囲・復旧手順・コミュニケーションを明確にして対応する