Hi all,

I’m curious about how different teams manage Git workflows with multiple developers.

Do you prefer Git Flow, GitHub Flow, or something else?
Any tips for keeping things organized and avoiding conflicts when several people work on the same repo?

Thanks for sharing your experiences!

Comments

sarah.navin’s picture

Hi,

We’ve been experimenting with different workflows at my team and I can share what worked for us (and some mistakes we made).

We mostly use a simplified Git Flow. So basically:

  • main branch is always deployable. Nothing should go directly here.

  • develop branch is where we merge features first. This is kinda like our staging area.

  • Feature branches for each task or ticket, named something like feature/username-some-feature. This helps avoid conflicts and makes it clear who’s working on what.

  • When a feature is ready, we open a merge request to develop. Ideally someone else reviews it before merging.

Some things that helped:

  • Pull from develop often while working on a feature branch. This reduces painful conflicts at the end.

  • Don’t let feature branches live too long. The longer they diverge, the more painful the merge.

  • For hotfixes, we just branch off main and then merge back to both main and develop.

We tried GitHub Flow once (no develop branch, just feature branches into main), but it got messy with multiple devs pushing at the same time. Git Flow-ish structure just felt safer for us.

One tip: encourage everyone to write meaningful commit messages and small PRs. Big, messy PRs are the main source of conflicts.

Not perfect, but after a few months everyone seemed to understand it and conflicts dropped a lot.

Hope it helps,

Sarah