I've been looking into options for source control. However, I'm not quite sure how I can implement something like Subversion considering my particular situation.
I have a number of different clients and projects, all of which are located on several different servers. Some clients have their own servers, and some only have a shared hosting account.
Typically, if I am making a few quick changes, I will make them on the production server without any issues. If I need to make major changes, I replicate the production environment as best as I can either on my workstation or in my reseller account, make the changes, and then upload the changed files in one batch.
I have used versioning systems in jobs at software companies, where we were building an actual software product (versus managing live websites). I'm not sure how a versioning system can be successfully implemented in my situation.
My impression is that I will need to commit files to version control and then upload the changed files to the production site. Does this mean that I need to make the changes in a separate environment, commit them to svn, download the changed files (again), and then upload them to the live site? What if a particular website's production environment is impossible to recreate on my desktop or in my reseller account, thus requiring the changes to be made on the production site?
OR, is there a simpler process that I'm unaware of? What experiences have other people had in this situation?
Forgive me if my post is messy or if my questions aren't too clear... I just finished a seven-hour stretch of work and my brain is a littly fuzzy