Git 第 2 弾: rebase で履歴を整え、revert で取り消し、追跡ミスを直してタグを打つ

チーム開発で毎週のように起きる 4 つの場面を扱います。誤ったコミットを revert で安全に取り消す、誤って追跡したログを .gitignore で外す、古い地点から分岐したブランチを rebase で最新の main に付け替える、fast-forward で取り込んで注釈付きタグを打つ。

中級約 45 分Azure 実環境

ラボ概要

このラボでは、チームの Git 運用を任された開発者の想定で、履歴を「消さずに直す」「きれいに保つ」操作を実機で身につけます。

ブラウザで開く IDE の作業ディレクトリは Git リポジトリで、main には正しい変更と誤った変更(挨拶を壊した)が積まれ、誤ってログファイルも追跡されています。同僚の feature/report は古い地点から分岐したままです。これらを revert・.gitignore・rebase・fast-forward・注釈付きタグで整えます。

学習目標:

  • git revert で、履歴を残したまま特定のコミットを打ち消す
  • git rm --cached と .gitignore で、追跡してはいけないファイルを外す
  • git rebase main で、ブランチのコミットを最新の main の上に載せ直す
  • git merge --ff-only でマージ コミットを作らずに取り込む
  • git tag -a で注釈付きタグを打ち、リリース地点を記録する
前提知識:
  • 「Git 入門: ブランチとマージ」ラボ相当(ブランチ作成、コミット、マージ、衝突の解消)
完了条件:
  • main に revert コミットがあり、app.py の挨拶が「こんにちは」に戻っていること
  • app.log が追跡から外れ、.gitignore(*.log)がコミットされていること
  • feature/report が最新の main の上に付け替えられ、fast-forward で main に取り込まれていること(マージ コミット無し)
  • 注釈付きタグ v1.1 が main を指し、作業ツリーがきれいなこと

ラボの構成

  1. 1ブラウザ IDE を開いて履歴を読む
  2. 2revert で誤った変更を取り消す
  3. 3追跡ミスを直す(.gitignore)
  4. 4feature/report を rebase で最新の main に載せ直す
  5. 5fast-forward で main に取り込む
  6. 6注釈付きタグを打つ
  7. 7判定を実行する
  8. 8発展(任意)と考察

詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。

手順のプレビュー(最初のステップ)

1. ブラウザ IDE を開いて履歴を読む

  • ラボ画面の ブラウザ IDE を開く をクリックし、表示されているパスワードでサインインする
  • Terminal → New Terminal でターミナルを開き、状態を確認する
git status
git log --oneline --all --graph
python3 app.py CloudDo      # 「さようなら、CloudDo」になっている(誤った変更)
git ls-files                # app.log が追跡されている
  • main の先頭が「挨拶を変更(誤った変更)」で、feature/report が初期コミットから分岐していることを図で確認する
> 注: --all --graph で全ブランチの形を見る癖を付けると、これから行う操作で履歴がどう変わるかを確かめられます。
残り 7 セクションの手順は、ラボを開始すると画面内に表示されます

構成図

構成図

参考リソース

このラボが対応する試験の模擬問題集

本番形式の問題で理解度を確認できます。各試験とも先頭 15 問は無料です。

AZ-400Azure DevOps Engineer練習テスト 2 回・全 160 問