Bird
Raised Fist0
Gitdevops~5 mins

Amending the last commit in Git - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does the command git commit --amend do?
It lets you change the last commit by adding new changes or editing the commit message without creating a new commit.
Click to reveal answer
beginner
How can you change only the commit message of the last commit without changing files?
Run git commit --amend without staging new changes. This opens the editor to edit the message.
Click to reveal answer
intermediate
True or False: Amending a commit changes the commit's unique ID (hash).
True. Amending creates a new commit with a new ID because the commit content changes.
Click to reveal answer
intermediate
Why should you be careful when amending commits that have already been pushed to a shared repository?
Because it rewrites history and can cause problems for others who pulled the original commit.
Click to reveal answer
beginner
What is the difference between git commit --amend and creating a new commit?
Amending changes the last commit itself, while a new commit adds a separate change on top of the history.
Click to reveal answer
What happens if you run git commit --amend after staging new changes?
AThe staged changes are discarded.
BA new commit is created without changing the last commit.
CThe last commit is replaced with a new commit including the staged changes.
DGit shows an error and stops.
Which command lets you edit the last commit message without changing files?
Agit commit --amend
Bgit commit --fix
Cgit commit --edit
Dgit commit --message
Why is it risky to amend commits that have been pushed to a shared repository?
AIt locks the repository for others.
BIt deletes the repository.
CIt automatically merges conflicts.
DIt can confuse others because the commit history changes.
What is the effect on the commit ID when you amend a commit?
AThe commit ID changes because the commit is new.
BThe commit ID stays the same.
CThe commit ID is deleted.
DThe commit ID duplicates.
If you want to add forgotten changes to your last commit, what should you do?
ARun <code>git commit</code> without options.
BStage the changes and run <code>git commit --amend</code>.
CRun <code>git reset</code>.
DDelete the last commit.
Explain how to safely amend the last commit message without changing any files.
Think about the steps to change only the message.
You got /4 concepts.
    Describe the risks of amending commits that have already been pushed to a shared repository and how to avoid problems.
    Consider teamwork and shared history.
    You got /5 concepts.

      Practice

      (1/5)
      1. What does the git commit --amend command do?
      easy
      A. It modifies the last commit by changing its message or content.
      B. It deletes the last commit permanently.
      C. It creates a new commit without changing previous commits.
      D. It resets the repository to the initial commit.

      Solution

      1. Step 1: Understand the purpose of git commit --amend

        This command is used to change the last commit, either by editing its message or adding new changes.
      2. Step 2: Compare with other options

        Deleting commits or resetting the repository are different commands like git reset. Creating a new commit does not amend the last one.
      3. Final Answer:

        It modifies the last commit by changing its message or content. -> Option A
      4. Quick Check:

        Amend last commit = modify last commit [OK]
      Hint: Amend changes last commit, not create or delete [OK]
      Common Mistakes:
      • Thinking it deletes the last commit
      • Confusing amend with creating a new commit
      • Assuming it resets the whole repo
      2. Which of the following is the correct syntax to amend the last commit message in Git?
      easy
      A. git commit -amend "New message"
      B. git amend commit -m "New message"
      C. git commit --amend -m "New message"
      D. git commit --edit-message "New message"

      Solution

      1. Step 1: Recall the correct syntax for amending commit message

        The correct command is git commit --amend -m "New message" to directly change the last commit message.
      2. Step 2: Identify incorrect syntax

        Options B, C, and D use invalid flags or wrong order, which Git does not recognize.
      3. Final Answer:

        git commit --amend -m "New message" -> Option C
      4. Quick Check:

        Correct amend syntax = git commit --amend -m [OK]
      Hint: Use --amend before -m to change message [OK]
      Common Mistakes:
      • Swapping order of flags
      • Using non-existent flags like --edit-message
      • Typing 'amend' as a separate command
      3. Given the following commands executed in order:
      echo "Hello" > file.txt
       git add file.txt
       git commit -m "Add file"
       echo "World" >> file.txt
       git add file.txt
       git commit --amend -m "Add file with content update"

      What will git log -1 --pretty=%B output?
      medium
      A. Add file
      B. Add file with content update
      C. Add file Add file with content update
      D. No commit message

      Solution

      1. Step 1: Understand the commit history after commands

        First commit message is "Add file". Then file.txt is updated and staged. The git commit --amend replaces the last commit message with "Add file with content update".
      2. Step 2: Check the latest commit message output

        The git log -1 --pretty=%B shows the last commit message, which is now "Add file with content update" after amend.
      3. Final Answer:

        Add file with content update -> Option B
      4. Quick Check:

        Amended commit message = updated message [OK]
      Hint: Amend replaces last commit message and content [OK]
      Common Mistakes:
      • Thinking amend adds a new commit instead of replacing
      • Expecting both messages to appear
      • Assuming commit message stays unchanged
      4. You ran git commit --amend but accidentally removed some changes from the last commit. How can you fix this?
      medium
      A. Delete the repository and clone again.
      B. Run git commit --amend again without changes.
      C. Use git push --force to overwrite remote.
      D. Use git reflog to find the previous commit and reset to it.

      Solution

      1. Step 1: Understand the problem with amend

        Amending rewrites the last commit, so if changes were lost, the previous commit state is still in Git history.
      2. Step 2: Use git reflog to recover

        git reflog shows recent commit states. You can find the commit before amend and reset to it to restore lost changes.
      3. Final Answer:

        Use git reflog to find the previous commit and reset to it. -> Option D
      4. Quick Check:

        Recover lost commit with reflog [OK]
      Hint: Use reflog to recover lost commits after amend [OK]
      Common Mistakes:
      • Trying to fix by amending again without changes
      • Deleting repo instead of recovering
      • Forcing push without fixing local history
      5. You committed a file with a typo in the message and forgot to add a new file. Which sequence correctly fixes both issues using amend?
      hard
      A. Add the new file, then run git commit --amend -m "Corrected message"
      B. Run git commit --amend -m "Corrected message" first, then add the new file
      C. Delete the last commit, add the new file, then commit again
      D. Push the commit, then fix the message and add file in a new commit

      Solution

      1. Step 1: Stage the new file before amending

        To include the new file in the last commit, you must add it first with git add.
      2. Step 2: Amend the commit with the corrected message

        Run git commit --amend -m "Corrected message" to update the commit message and include the staged new file.
      3. Final Answer:

        Add the new file, then run git commit --amend -m "Corrected message" -> Option A
      4. Quick Check:

        Stage files before amend to include them [OK]
      Hint: Add files first, then amend commit message [OK]
      Common Mistakes:
      • Amending before adding new files
      • Deleting commits unnecessarily
      • Pushing before fixing local commit