Its 2016, I have sitefinity version 7 & after going through this whole thread I still cannot conclude, what exactly is the deployment model of a Sitefinity website. I am having the same questions/queries as the original poster had.
I have a live production sitefinity website, & the latest backup of production DB & Code before the development of a CR(Change Request) was started. Now as part of a new requirement, the client asked us to add/edit a custom module with custom functionality & add/edit several pages to the existing site. For that, I had to do some changes in the code (which is not an issue because I can replace the production code with the development code once development is finished), However, how am I going to sync the production db with the changes made in development db while creating a dynamic module or adding/updating pages/content types/content blocks etc.
If I am not wrong, if I create a new module through the module builder, sitefinity makes some changes in the Database (right?). So the changes in development database caused by my operations on CMS backend (Eg: create/modify module, add/modify content type, add widget on page, add/modify page) need to be copied over to my production database as well (right?), or do these operation don't cause any db change and only .config file changes? (If yes, then which config files are affected by the above operation?). If not, then how can I sync these changes made on development DB with the production DB without having to replace the production DB with the development one (Because, Although I am developing after taking the latest production DB backup, the database of the live site would still be constantly changing because of content add/update/delete). What exactly is the approach to this?
Any help would be greatly appreciated, Thanks.