Если вы работаете с Git, вы должны попробовать Pull Requests.
Таким образом, вы сначала объединяете основную ветку с текущей рабочей веткой. Любые конфликты слияний будут в вашем местном филиале. Это хорошо, потому что ваша главная ветка никогда не нарушается. Если вы действительно облажались, у вас есть локальный коммит, к которому вы можете вернуться.
Когда вы закончите объединение, вы попросите кого-то еще в команде проверить и объединить вашу ветку с главной веткой. Никогда не объединяйте свои собственные! Пока никто не прокрался и не сделал еще один запрос на извлечение, вы гарантированно успешно слились. Поскольку все знают о запросе на извлечение, в любом случае не должно быть, чтобы несколько человек сливались с мастером одновременно.
Как только вы привыкнете к этому процессу, вы должны пытаться объединяться как можно чаще - что-то вроде непрерывной интеграции бедняка. Чем меньше времени между конфликтами, тем лучше. Вы узнаете, когда два человека дублируют усилия, и они могут объединиться. Некоторые места будут сливаться каждый раз при выполнении требования, которое может быть каждые пару часов. Я рекомендую объединять как минимум раз в неделю; в противном случае вам нужно разбить свои задачи лучше.
Я обычно создаю одну ветку для каждой задачи. Git хорош тем, что различает локальные коммиты и толчки. Это дает некоторые преимущества каждому человеку, имеющему свою собственную ветвь без всей сложности.