I have a few different clients who have multiple developers on site. Local is great and all but seems to work best when there is only one developer as he/she can pull a site down, make changes and push back up. Many of these clients ave image-heavy sites so that makes for a lot of pushing and pulling around. I’ve started to try and migrate many of them into using Amazon for media which helps, but it’s an extra layer of complexity for sure.
Code repository. We keep our themes in Bitbucket which is nice but we can’t track any changes made in Local that are not theme related. It’s all very disjointed.
I can’t be the only person in this situation. How do you handle these difficulties? The FlyWheel support team always points me to DeployHQ but I just can’t see how that will help. Maybe I’m missing the point.
Any tips or tricks you have?
@matt We do something similar at our agency. We have a team of 3 devs that can all can work on a single site. We each have a Local install where they do their work and then those changes to the child theme or config plugin are tracked on a BitBucket repo. Here is how it is structured.
.git directory sits in the /public directory and ignores everything except for wp-content/themes/client-child-theme and wp-content/plugins/client-config-plugin. Check out this article for a good primer on that and a copy of a good gitignore file (https://www.billerickson.net/git-push-wpengine/)
So the dev makes their changes, commits in sourcetree or via command line, then pushes just those changes via git push to wpengine. we do not use the local sync provided by Local to push, only to pull down the initial copy of the site.
The main thing here is that 1) designate a single dev to be the main commiter of compiled files like css or js during development. and 2) if project is in production, any changes must get pushed up to bitbucket at the same time they are sent to wpengine via git push so that wpengine and bitbucket dont get out of sync.
within Sourcetree, we have 4 places we can push to origin( bitbucket), 1. wpenggine production, 3. wpengine staing, 4. wpengine development.