Preliminary development does not require version control; but what you need is a collaboration mechanism to track changes to specifications and documentation.
Some teams deploy version control at this point. Personally, I do not consider its value here, wiki / trello or the like is more valuable and makes more sense; as you track a lot of abstract ideas.
As soon as you start writing code, you should start the version control process; and during the development phase, prior to deployment, you continue to use version control; this is where you start to get value from it. Especially if you are developing along with others. If you're a solo developer, versioning might seem like extra work without any benefit; This is debatable, but when you work as a team it is very important.
After the deployment of the project; version control is critical and mandatory . You simply cannot afford to not do this - version control offers you many advantages for the type of work that you perform after deployment. Fixes, automated testing, deployment - they can be easily automated from your version control system. If you did not use version control during development; Now is the right time to deploy it, as you have a solid base as your reference point.
Version control these days is so easy to use with mercurial / git and their online hosting services that it costs nothing to start; and the advantages far outweigh any disadvantages.
source share