Why Version Control Exists

Imagine I’m working on a cool project, but there is this feature that I cannot build alone.
So I reach out to a developer with experience in that particular area; let's name him "Mark."
I then save the entire code file on a pendrive and send it to Mark.
He plugs the pendrive into his computer and adds that particular feature to the code, modifying the code file.
He then sends back the updated code via the same pendrive to me.
Now this introduces a problem: the code file I received has no way to track which code was added by Mark and which code he changed.
Mark then realizes, "Oh, there's a bug in the code I gave to Krrish! (that’s me)." So, he fixes the bug in the local copy on his computer and asks me to give him the pendrive so he can add the fixed code.

This problem will increase as soon as I add a third developer.
This tells me two things:
Collaboration is difficult; only one developer can update the codebase at a time.
Any changes in the main codebase that exist on the pendrive cannot be tracked.
I came up with an idea: what if there were a simple tracking system on the pendrive? This system would record which lines of code were added, removed, or changed, and who made each change.
This idea solves the problem of tracking changes in the code, but collaboration is still challenging. We need a single source of truth, which means having one version that every developer considers the latest.
So, we set up a server in the cloud and install our tracker on it. Now, all the developers can access the server, eliminating the need for the pendrive solution.
This solves both problems.
We've essentially created a system that tracks changes, allows collaboration, and keeps a single source of truth, in other words a version control system.
