Хорошая картинка. Только судя по всему, в данной логике основная локальная ветка - dev. Это далеко не всегда так. К примеру у нас - master (а гитхаб при создании новой репы предлагает по умолчанию ветку main). И если не имея ветки dev попытаться переключиться git checkout dev, получите ошибку.
Так что здесь надо понимать под dev - основную ветку, которую вы получили при клонировании проекта.