То, что вы делаете, правильно, но вы можете добавить двусмысленность --
на тот случай, если у вас есть имя каталога, совпадающее с именем ветви, т.е.
git checkout -- whole_folder
git будет обновлять временные метки только тех файлов, которые он действительно должен изменить, поэтому, если ваш инструмент сборки на основе зависимостей правильно использует mtimes, минимальное безопасное количество файлов должно быть восстановлено. Если вы видите другое поведение, это будет ошибкой.