Skip to content

7-Day Git Challenge

7 days · 4 labs · 6 knowledge checks · for developers who use git daily and want the model behind the commands.

Tick each day as you finish it. Progress is stored in this browser and shown onMy Academy.

  1. Explain why a commit is a snapshot, not a diff, and why every clone is complete.

    Then Run `git log --oneline` in a real repository and read the first ten lines as snapshots.

    Checkpoint — Reading commits as snapshots. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Reading commits as snapshots" in My Academy.

  2. Tell working tree, index and repository apart, and read `git status --short` correctly.

    Then Stage half of a change with `git add -p` and confirm `MM` in status.

    Checkpoint — Identifying what enters the next commit. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Identifying what enters the next commit" in My Academy.

  3. Know what `git add` actually writes, and why partial staging is possible.

    Then Unstage a file with `git restore --staged` and watch the status column move.

    Checkpoint — Staging control (unstage without losing work). A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Staging control (unstage without losing work)" in My Academy.

  4. Explain HEAD → branch → commit, and what "detached" means.

    Then Do the lab: lose a commit on a detached HEAD and get it back.

    Checkpoint — HEAD and detached-HEAD recovery. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: HEAD and detached-HEAD recovery" in My Academy.

  5. Create, switch, compare and delete branches knowing nothing is copied.

    Then Do the lab: delete a branch with unmerged work and recover it from the reflog.

    Checkpoint — Branch recovery practice. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Branch recovery practice" in My Academy.

  6. Choose between restore, reset and revert by where the change is and where it should be.

    Then Do the lab, including the one command that destroys work, in the disposable repository.

    Checkpoint — Choosing a safe undo. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Choosing a safe undo" in My Academy.

  7. Read conflict markers as punctuation and resolve a conflict properly.

    Then Finish the lab, then take the "New to Git" learning path from wherever it now starts for you.

    Checkpoint — Conflict resolution practice. A new situation, not the lesson's example; 2 variants, a different one on each retry. Passing records "Completed: Conflict resolution practice" in My Academy.