[dependencies]
some_lib ="1.0.5"
а в репе будет последняя версия 1.0.6, то при сборке приедет именно 1.0.6, а не то что написано в конфигурации проекта. Чтобы приехала именно 1.0.5 нужно написать "=1.05" потому что без = в начале обозначает 1.0.5 и выше, согласно https://semver.org/, т.е обновится patch-часть (исходя из соображений поддержания совместимости). Но не пугайтесь, для воспроизводимых сборок есть файл Cargo.lock, который содержит версии зависимостей из которых собран проект. Его рекомендуют положить в репозиторий и обновлять периодически специальной командой. Если же нужно проверить есть ли новая мажорная версия, то это тоже довольно легко, но требует дополнительного плагина, который ставится с полпинка.
Вцелом такой подход мне нравится, несмотря на некоторую неочевидность. Можно безопасно всасывать минорные обновления почти без ручного вмешательства и достаточно просто отслеживать более серьезные измнения