main(または運用で定めたリリースブランチ)へのマージを行う。lint → test → build → deploy を実行するのを確認する。問題発生時は影響を最小限にするため、状況に応じて以下の方法を選択してください。
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
この方法は履歴を壊さずに問題を取り消せるため、原則として優先して検討してください。
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)やサーバー上での手作業は最小限に留める