Start without Git
Imagine that Yassine is building a small portfolio:
portfolio/
|-- index.html
|-- style.css
`-- app.js
The project works. Yassine changes app.js, but the new version breaks the menu. He wants the previous version back.
Without a history tool, he starts copying folders:
portfolio/
portfolio-final/
portfolio-final-2/
portfolio-final-working/
portfolio-final-really-working/
The copies create new questions:
- Which folder is the latest?
- Which folder still works?
- What changed between two copies?
- Why was the change made?
- How can a teammate add work without replacing Yassine's files?
A version needs meaning
A useful version should answer three questions:
What changed?
Who recorded it?
Why was it recorded?
Git helps a project keep that history. It does not decide whether the code is correct. It records chosen versions and lets people compare them.
Think before using a tool
Suppose Yassine changes the page title and fixes the menu in the same folder. Should these become one version or two?
Two versions are clearer because they represent two different intentions:
Change the page title
Fix the mobile menu
Small, focused versions are easier to understand and review.
What the copied folders reveal
To compare two copied folders, Yassine must open both versions and inspect their files manually. The folder names still do not explain which lines changed or why. Git will store this comparison and its explanation inside one project history.
What to remember
Git replaces confusing folder copies with a named, inspectable history. A good version records one clear intention.