Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Web Development Work flow using git [closed]

I'm managing a team of 4 developers. We develop CMS based sites on a PHP / MySQL backend.

I want to improve the workflow. What i want:

enter image description here

  • Are there any services that host a git repo and sync it automatically with the servers?
  • Production server would be master branch
  • Testing server would be a different branch
  • we deal with many small sites and some large so we need workflow to be fast and agile
  • WHAT ABOUT THE DATABASE ? lol

(if anyone wants to add to the diagram PSD file can be found here: workflow.psd

like image 708
AndrewMcLagan Avatar asked Mar 09 '13 03:03

AndrewMcLagan


1 Answers

I'd highly suggest using Beanstalk if you want something quick and easy to set up. It handles deployments very well. If you're looking at doing a bit more yourself (setting up the hooks and such) then another option would be github.

Please do not user Master as your production branch, master should never be production. A better workflow would be to have a Staging, Development, and Production branch / environment. Please see this guide about branching on Beanstalk's guides, it's pretty insightful.

As for keeping track of databases, if your framework / cms doesn't support database migration I'd highly suggest developing some form of migration / database version control in-house. You can also check out a framework like FuelPHP, which has migration built in. A nice little database version control system I found while poking around : dbv.php.

like image 78
Kisuka Avatar answered Oct 06 '22 14:10

Kisuka