но это лишь одна из проблем в целом)
Другая - консистентность данных при переключениях между версиями и т.д. Постоянно оставляет за собой кучи мусора, приходится следить все ли файлы обновились до нужной версии, все ли "лишние" файлы удалились и т.д.
Там по умолчанию сняты галочки при переходе на CL, типа "физически удалять удаленные файлы", надо их поставить. Но по моему опыту это только часть проблем решит. Я выкачивал себе копию на каждую ветку (стрим) с которой работал, и старался не прыгать назад по истории (и держал git-репозиторий локальный рядом куда эти файлы скриптом коммитились, на случай если придется прыгать назад или перфорс ещё как-то будет шалить).