Основная функция git checkout это перемещать указатель HEAD, т.е. то куда смотрит ваша локальная копия. Вы можете переместить его на вершину ветки: git checkout <branch> или на отдельный коммит: git checkout <sha>Ну а вспомогательные это создание веток:git checkout -b, отмена изменений в файле:git checkout -- <file>
korobochkin написал основную функцию команды, могу еще добавить, что git checkout отменяет изменения файла, достаточно прописать git checkout <Имя файла> и он будет возвращен в первичное состояние коммита