gitbitbucketcommunicationcollaborationbranching-strategy

How do you work with git as part of a team, with lots of small changes


Looking for some advice and input in how to work effectively with git/source controls.

I work as part of a team of 5 developers. One of our biggest clients has a huge site built in Wordpress with lots and lots going on.

We use Bitbucket for our repos and SourceTree to handle all our commits and check-ins.

We often have jobs that are quite small, that don't get signed off at the same time. E.g:

Often these jobs will be done by different developers, but will use the same files. We will push our commits, when ready, to our demo branch and then await sign off. Sometimes, Project Manager doesn't sign off Job One for a few weeks. However in that time, Job Two needs to go live.

The issue we keep having is that because our demo branch (and our corresponding demo site) have the work for both Job One and Job Two on it, we can't just merge our demo branch into live branch (and live site).

How do you guys manage this? What's the best way to sort through multiple jobs working together? We have small jobs, large jobs, medium jobs all happening on the same site at the same time and we're constantly falling over pushing up things that aren't ready from our demo to live because they haven't been signed off. We merge the branches together and add things that aren't supposed to be there.

Any advice in how this is possible let me know!

This is our server work flow:

Local machine > Dev > Live


Solution

  • In my current project, we follow this simple and cool branching strategy. We have four people who actively push commits to repository and we are finding it easy to manage our code base.