Прошу дать советы начинающему
Мавен мне не понравился категорически.
Graddle использовал когда писал под AndroidStudio. Потому что он там автоматом по умолчанию ставится. Сам же я, по доброй воле, никогда бы не стал использовать системы сборки, хранящие код в удаленных хранилищах. Когда системы контроля версий хранят код на удаленных ресурсах -- это нормально. Но когда сборщик выкачивает что-то из сети -- это несусветная дикость. Да и у нас в импортозамещени такое невозможно: нельзя допустить возможность установки непроверенных пакетов.
Я пользуюсь SVN в качестве системы контроля версий. В качестве сборщика обычно использую cmake, но стараюсь оформлять проекты так, чтобы qmake тоже мог скомпилировать проект. К cmake имеются плагины для различных IDE. Поэтому собирать проект я могу почти на любом компе, хоть на Raspberry или на каком-нибудь удаленном VDS. (Иногда приходится это делать, например, когда едешь в пригородной электричке).