Is there anyway i can see the history of all the changes which i have made over a period of time. Such as if i am working on a piece of code and over time i had taken a wrong direction and now the code is too complex or unreadable, if at this point i could see what the code was at an earlier stage so i can revert back to that code and start again from. A system which would perhaps give a timeline of all the changes?
I would prefer a opensource system
which could accomplish this but it could be paid too.