One change each
A good commit is one small, complete change with a clear message. Think of it like an entry in your project diary: what changed, and why it matters.
Recruiters may not read every line of code. But they can scan your commits to see how you built, fixed, and improved the project.
What readable means
Readable commit history does not mean perfect history. It means each commit has a purpose.
Bad history looks like this: final, fix, update, working, changes. Good history shows progress: add login form, validate UPI ID input, fix empty cart total.
Make focused commits
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done
Good commit flow
Use this when you changed a form and also edited the README. These are different ideas, so commit them separately.
The first commit changes app behaviour. The second commit improves project instructions.
git status
git diff
git add src/components/LoginForm.jsx src/utils/validateUpi.js
git commit -m "Add UPI ID validation to login form"
git add README.md
git commit -m "Document local setup steps"Use AI carefully
You can ask ChatGPT, Gemini, or Claude to suggest a commit message from your diff. Paste only code you are allowed to share.
Check that the message is specific, honest, and not too broad. If AI says improve app, rewrite it to say what actually changed.
Prompt:
Suggest 5 short Git commit messages for this diff.
Use imperative mood.
Do not mention files unless needed.
[Paste git diff output]Do not commit noise
Beginners often commit generated files, local settings, or secrets. That makes the repo harder to review and can leak private data.
Before every commit, scan the file list. If you see .env, API keys, node_modules, build folders, or personal notes, stop and fix your .gitignore.
git status
# If you accidentally staged a file, unstage it:
git restore --staged .envMessage patterns
A useful message starts with a verb. Keep it short, but not vague.
If the why is not obvious, add a longer body. This is useful for bug fixes and tradeoffs.
git commit -m "Fix cart total when quantity is zero"
git commit -m "Replace mock data with API fetch" -m "This keeps the product list in sync with the backend and removes hardcoded demo items."Do this now
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done