версии svn несовместимы

версии svn несовместимы

У меня есть рабочие копии одного и того же репозитория на двух разных компьютерах (Mac). Есть файл, о котором идет речь (скажем, SomeFile.m), который отображается как r703 в обеих рабочих копиях, без локальных изменений. Выполнение svn update SomeFile.mна обеих сторонах не приводит к обновлениям — он считает, что он полностью обновлен с репозиторием.

Однако эти два файла различны. У них разные контрольные суммы, и diff показывает различия, которые важны для кода. Файл правильный в одной из рабочих копий, но не в другой.

Во-первых, как принудительно заменить неправильный файл тем, что есть в репозитории?

Во-вторых, как этот файл вообще оказался в таком состоянии? Из-за неправильного разрешения конфликтов или чего-то в этом роде?

решение1

Если одна версия файла правильная, но вы подозреваете, что версия в репозитории неверна, то см.Как заставить Subversion зафиксировать неизмененный файл?

Если вы хотите принудительно получить файлы из репозитория, см.Принудительная команда svn checkout перезаписывает текущие файлы.

В противном случае просто измените один из файлов, сохраните его в репозитории как новую версию и повторно выполните извлечение на другом компьютере, как указано выше.

решение2

Самый простой способ, который я нашел, чтобы «принудительно» извлечь/обновить определенный файл, — это удалить этот файл в рабочей копии — удалить файловую систему,нет svn-delete- и запустите обновление рабочей копии. Файл будет восстановлен с версией из репозитория.

Одним из способов, которым файл мог оказаться в таком состоянии, является наличие в нем некоторых локальных изменений, которые остались незамеченными. SVN не зафиксирует файл без разрешения конфликта, и он также останется необновленным.

Связанный контент