Всегда было интересно, как) Что мой опыт, что опыт людей в интернете пишет простую цепочку.
"есть зависимость от общего модуля в нескольких мест" - "надо рефакторить кучу мест для обратно несовместимого изменения" - "нельзя провести такой глобальный рефакторинг, потому что надо будет перетестить кучу всего" - "создаешь функцию с версией v2"
так и спасает. надо рефакторить - исправляй зависимости. после рефакторинга остаётся снова чистый собирающийся репозиторий.
но да, тяпляп сломать все быстро, положив хуй на коллег, мешает