Чтобы обнаружить измененные классы, я бы скомпилировал код в базе кодов и провел бинарное сравнение классов за классом между файлами классов, которые вы только что создали, и файлами в производстве. Это может быть легко автоматизировано.
Но реальное решение, конечно, таково: ваша компания должна иметь правило, которое собирает только с сервера сборки (Jenkins, Bamboo и т. Д.), Который извлекается из официального репозитория git, и может быть запущен в производство. Без исключений.