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
Why is it important to write good commit messages?
Good commit messages help your team understand what changes were made and why. They make it easier to track history, find bugs, and collaborate effectively.
Click to reveal answer
beginner
What are the three main parts of a good commit message?
A good commit message has: 1) A short summary (about 50 characters), 2) A blank line, 3) A detailed explanation if needed (wrapped at 72 characters).
Click to reveal answer
beginner
What tense should you use in the commit message summary?
Use the present tense, like "Fix bug" or "Add feature", because the commit describes what the change does now.
Click to reveal answer
beginner
Example of a good commit message summary?
Fix login error when password is empty
Click to reveal answer
beginner
What should you avoid in commit messages?
Avoid vague messages like "fix" or "update" without details. Also avoid very long summaries or no explanation when the change is complex.
Click to reveal answer
What is the recommended maximum length for the commit message summary line?
A72 characters
B50 characters
C100 characters
D120 characters
✗ Incorrect
The summary line should be about 50 characters to keep it concise and readable.
Which tense is best to use in commit message summaries?
APast tense (e.g., Fixed bug)
BFuture tense (e.g., Will fix bug)
CAny tense is fine
DPresent tense (e.g., Fix bug)
✗ Incorrect
Present tense is preferred because the commit message describes what the change does now.
What should you do after the summary line in a commit message?
AAdd a blank line
BStart writing the detailed explanation immediately
CAdd a list of changed files
DWrite the author name
✗ Incorrect
A blank line after the summary separates it from the detailed explanation.
Why avoid vague commit messages like "fix" or "update"?
AThey don't explain what was fixed or updated
BThey are too short
CThey are not allowed by git
DThey cause merge conflicts
✗ Incorrect
Vague messages don't help others understand the purpose of the change.
How should long explanations in commit messages be formatted?
AOne long paragraph without breaks
BIn uppercase letters
CWrapped at 72 characters per line
DIn bullet points only
✗ Incorrect
Wrapping at 72 characters improves readability in many tools.
Describe the structure and style of a good commit message.
Think about how to make your message clear and easy to read.
You got /5 concepts.
Explain why vague commit messages are problematic and how to improve them.
Imagine your teammate reading your commit weeks later.
You got /4 concepts.
Practice
(1/5)
1. What is the main purpose of a good commit message in Git?
easy
A. To list all files changed in the commit
B. To explain what changes were made and why
C. To include the entire code change in the message
D. To write a long story about the project history
Solution
Step 1: Understand the role of commit messages
Commit messages should clearly explain what was changed and why, helping others understand the purpose.
Step 2: Identify the best option
To explain what changes were made and why correctly states the purpose, while others focus on irrelevant or incorrect details.
Final Answer:
To explain what changes were made and why -> Option B
Quick Check:
Good commit message = explain what and why [OK]
Hint: Focus on explaining changes and reasons, not details [OK]
Common Mistakes:
Listing files instead of explaining changes
Writing too much unrelated history
Including code in the message
2. Which of the following is the correct format for a good Git commit message?
easy
A. A message with only emojis
B. A long paragraph without a summary line
C. Only a list of changed files
D. A short summary line followed by a blank line and detailed explanation
Solution
Step 1: Recall Git commit message format
A good commit message starts with a short summary line, then a blank line, then optional details.
Step 2: Match options to format
A short summary line followed by a blank line and detailed explanation matches this format exactly; others do not follow best practices.
Final Answer:
A short summary line followed by a blank line and detailed explanation -> Option D
Quick Check:
Summary line + blank line + details = correct format [OK]
Hint: Use a short summary line, then details after a blank line [OK]
Common Mistakes:
Skipping the blank line between summary and details
Writing only a long paragraph
Using emojis without explanation
3. Given this commit message: Fix login bug What is missing to make it a good commit message?
medium
A. A detailed explanation of why the bug was fixed
B. A list of all files changed
C. A longer summary line
D. The author's email
Solution
Step 1: Analyze the commit message content
The message only has a short summary but lacks explanation of why the bug was fixed.
Step 2: Identify what improves clarity
Adding a detailed explanation helps others understand the reason behind the fix.
Final Answer:
A detailed explanation of why the bug was fixed -> Option A
Quick Check:
Good message = what + why, missing why here [OK]
Hint: Add why the change was made, not just what [OK]
Common Mistakes:
Only writing a short summary
Listing files instead of explanation
Adding unrelated info like author email
4. You wrote this commit message: fix login bug What is the main problem with this message?
medium
A. It includes a blank line after the summary
B. It is too long and detailed
C. It uses lowercase and lacks a capitalized summary
D. It uses past tense instead of present tense
Solution
Step 1: Check capitalization in commit messages
Good commit messages start with a capitalized summary line.
Step 2: Evaluate the given message
The message starts with lowercase 'fix', which is not recommended.
Final Answer:
It uses lowercase and lacks a capitalized summary -> Option C
Quick Check:
Summary line should start capitalized [OK]
Hint: Always capitalize the first letter of the summary line [OK]
Common Mistakes:
Starting summary with lowercase letter
Making summary too long
Ignoring tense conventions
5. You want to write a commit message for adding a new feature that improves search speed by caching results. Which commit message is best?
hard
A. Add caching to improve search speed
Implemented a cache layer to store recent search results, reducing response time.
B. Improved search speed by adding cache
Cache added.
C. Added cache
This commit adds cache.
D. Fix search speed
Cache implemented.
Solution
Step 1: Evaluate clarity and detail in options
Add caching to improve search speed
Implemented a cache layer to store recent search results, reducing response time. has a clear summary and detailed explanation of what and why.
Step 2: Compare other options
The other options are vague, use incorrect tense or verbs (such as 'Fix' for a new feature), or lack detailed explanation.
Final Answer:
Add caching to improve search speed
Implemented a cache layer to store recent search results, reducing response time. -> Option A
Quick Check:
Clear summary + detailed why = best commit message [OK]
Hint: Use clear summary and explain why change matters [OK]