Office LifeAug 16, 2019
Carvanasr.verlis

Merge Conflicts

TC: 🥜 YOE: 6 Does your team deal with huge amounts of merge conflicts on a weekly basis? What do you think this is a sign of? How do you remidy these issues?

@Eng
Add a comment
Zillow Group anon1358 Aug 16, 2019

Refactor, you have a monolithic repo that’s been (mis)architected with too much interdependence and excessively tight coupling of core logic.

Nintendo hvccvb Aug 16, 2019

Sadly probably not your choice, but this. Y'all are going to have a bad time.

Carvana sr.verlis OP Aug 16, 2019

We are currently building a new app. Most merge conflicts are coming from engineers working in the same components. Or engineers making small changes through out the codebase such as renaming files, moving/deleting files, etc. The engineers on my team are somewhat new to building software.

Oscar 🐨koala Aug 16, 2019

We have monorepo and we are just fine with 200 engineers.

Oracle pzd Aug 16, 2019

It means you are waiting too long to push your wip.

Carvana sr.verlis OP Aug 16, 2019

My team lead sits on PRs for days.

Yahoo xCWI25 Aug 16, 2019

There’s your problem. Seriously. Either your team lead needs to cut back on other responsibilities so they can review PRs promptly or your team needs more people who can review. Bring it up with your lead and/or manager.

Amazon AMZNBucks Aug 16, 2019

Pull from master every morning homie

Carvana sr.verlis OP Aug 16, 2019

I do. My team lead sits on PRs for days.

Medallia qwertyca Aug 16, 2019

Rebase resolve locally merge.

Siemens Healthineers DpDkFts Aug 16, 2019

Team is being productive I guess.

OpenTable Meliodas Aug 16, 2019

No, we don’t. We isolate and time work so developers are not stepping on each other with the app codebase.

Zoox VyGO67 Aug 16, 2019

Maybe structure branches hierarchically?

Netflix rAcC67 Aug 16, 2019

It’s a problem with shitty, monolithic spaghetti code. Refactor. Use DI.

Roku yredtjhdd Aug 16, 2019

Set Fast forward only on the repo and rebase locally as previously stated.

Mapbox zZisUrp Aug 16, 2019

Probably a combination of sitting on branches for too long and not enough communication between team members?