В Java надо знать SQL, писать код миграций вручную, использовать liquibase/flyway и подобное.
Значит, на то есть свои причины. Они мне пока непонятны. Зачем такая сложность на ровном месте, есть POJO напрямую соответствует тому, что в бд. И изменение в POJO напрямую должны менять схему бд.
Непонятны причины. Видимо, они есть. Ок. Пусть там где-то даже есть merge из двух веток git. Это очень специальная какая-то задача. Если что-то специальное кому нужно, он же может вручную дописить или написать код миграций.
Но 99 % миграций точно просто отражают изменение модели. Непонятно, зачем тут ручной труд.