Да.В Git вы получите копию всей истории.Вы можете отслеживать свою работу в своей собственной ветке и синхронизировать по своему усмотрению, используя pull или fetch.
Так как вы используете github, форк, который делает репо, и клонируйте с него.Если вы хотите внести свой вклад, вы можете создавать запросы извлечения.
РЕДАКТИРОВАТЬ:
Изначально все, что вам нужно сделать, это клонировать:
git clone <url to the repo>
git submodule --init --recursive
Если вы не вносите свой вкладс этого момента рабочий процесс становится проще:
git fetch
для получения последней информации с github
git merge --ff-only origin/master
git submodule update --recursive
Если вы получили ошибки, потому что случайно изменили файл, вы можете
git reset --hard HEAD
git clean -xdf
и начните с шага объединения снова.Возможно, вам придется зайти в каталоги подмодулей и выполнить там 2 вышеуказанных шага, если там произошли изменения.
Надеюсь, это поможет.