Здесь происходит 2 вещи. Во-первых, иконки рисуются с помощью TSVNCache.exe, который находится в фоновом режиме, наблюдая за изменениями файловой системы и обновляя иконки соответствующим образом. Тем не менее, он не так хорош, как раньше, и поэтому не всегда отображает правильный значок. Добавьте к этому, что Windows плохо справляется с этим, особенно в древовидной части проводника, поэтому довольно часто бывает, что наложения значков неверны и остаются неправильными. Я считаю, что самый простой способ исправить это - остановить TSVNCache (с помощью диспетчера задач). Остановить безопасно, и он автоматически перезапустится.
Надеемся, что Microsoft исправит проводник, чтобы эта функция работала более надежно.
Вторая часть заключается в том, что, несмотря на красный значок, файл действительно не изменился - вы можете видеть это, потому что svn diff не сообщает о различиях! (Черепаха может сообщить вам точно такую же информацию, используя команду «Проверить наличие изменений»).
Мне было бы интересно узнать, почему svn cat показывает «явно другой контент», а svn diff - нет.