Предположим, ветвь имеет историю A-B-C
.Вы делаете тег foo
на B
и помещаете его в удаленный репозиторий.Боб выбирает ветку и получает тег foo
, который указывает на B
.
Позже вы обнаружите, что тег должен был быть на C
.Таким образом, вы повторно ставите foo
на C
и принудительно отправляете его в удаленный репозиторий, но больше никому не говорите.Мэри выбирает ветку и получает тег foo
, который указывает на C
.
Из вашего примечания к выпуску Боб и Мэри узнают, что версия foo
является стабильной ревизией, поэтому они извлекают foo
в своих собственных репозиториях.Если B
и C
имеют одно и то же дерево, что означает, что коды одинаковы, вам просто повезло.Однако, скорее всего, у них разные деревья.Это ситуация, когда Боб и Мэри получают разные коды от foo
, и они не знают об этом.
Боб может найти ошибку, которая была исправлена в C
, и сообщает об этом Мэри, ноМэри говорит Бобу, что она не может воспроизвести ошибку.Боб говорит, что он проверяет foo
, и Мэри говорит, что она тоже.Может потребоваться усилие, которого можно было бы избежать, чтобы выяснить настоящую причину.Хуже, когда все больше людей получают теги с одинаковыми именами, но указывающие на разные коммиты.