I am seriously thinking to use git as my deployment method. Currently I work alone so conflicts is not a problem in my case. Lets say that I followed the steps to replicate a workflow that connects my localhost, my bitbucket account and my live server repository. I keep wondering how to insure that if anything breaks, I can safely get back to the stable version.
Only thing I can think is to create a branch for each future version and then checkout to it. If its not ok or I have problems I'll checkout back to master. If its ok, I merge the branch with master after a few days and I'll create a new branch.
Is this logical? I have searched many articles on the subject but I really can't understand most of them, because they are for mid-large teams so the workflow is different. Also I have made the same question to some sites and never got an answer, most probably cause its a stupid one, I really don't know. But here I am. How versioning will work in my case?