Таинственное неизменное явление в TortoiseSVN / TortoiseMerge
Я использую TortoiseSVN для контроля версий. В рабочем состоянии, с которым я работал несколько недель, я внезапно вижу ряд "измененных" файлов, отображаемых в диалоге "SVN commit..", которые я определенно не коснулся и которые не содержат каких-либо реальных отличий:
http://www.pekkagaiser.de/TortoiseMerge.gif
Я не менял кодировки этих файлов, не выполнял никаких других операций с ними, насколько я помню. Кто-нибудь знает, что это такое и как от него избавиться?
РЕДАКТИРОВАТЬ: поведение появилось снова. Черепаха требует "изменения текста", хотя их не было:
http://www.stadtpflanzen.de/images/Stackru1.gif
http://www.stadtpflanzen.de/images/Stackru2.gif
вряд ли это может быть концом строки, не так ли? Это не срочно, так как сейчас это происходит очень редко, но мне все еще интересно.
Изменить: Все в порядке, ребята, время, чтобы смириться. Это действительно неловко, но я узнал, что это было. На что я не указал, потому что я думал, что это не важно, так это то, что я работал не в диалоге "принятие..." в "Черепахе", а в "проверке изменений". Я думаю, что вы можете собрать все остальное: я много переключался между IDE и Tortoise, проверяя различные файлы, и всякий раз, когда я проверял файл, не нажимал кнопку "Обновить", делал что-то еще и проверял это снова, потому что забыл это не сработает, но, конечно, все еще будет в списке. Спасибо за ваше время! +1 отвечаю на каждый ответ и принимаю того, кто застрял со мной дольше всех:)
4 ответа
Хорошо, давай вытащим большие пушки.:-)
Извлеките файл (styles.css revision 40) в отдельный каталог.
Запустите программу, которая вычисляет md5 (например, md5
, md5sum
, или же openssl md5
) на вашей рабочей копии и копии хранилища. Если вы получите разные ответы, файлы будут другими, и TortoiseMerge не покажет вам что-то важное. Если в итоге вы получите один и тот же ответ (пренебрегая маловероятно вероятным случаем, когда два разных, но очень похожих файла имеют два одинаковых хеша md5), то файлы, очевидно, идентичны, и у TSVN есть некоторая проблема. (может быть, он смотрит на дату файла?)
редактировать: единственный патологический случай, который приходит мне в голову, это то, что, возможно, файл имеет другую кодировку (например, UTF-8 против ASCII)... Я обновил WinXP SP2 до SP3 несколько месяцев назад, и иногда я сталкиваюсь со странными вещами (очевидно, UTF -8 знаков порядка следования байт), где первые несколько символов странно отображаются в текстовых редакторах.
Дайте нам знать, что вы найдете!
Посмотри в репо-браузере. Есть столбцы, показывающие, изменилось ли содержимое файла или изменились ли свойства файла. Похоже, что свойства изменились, но не файл.
Возможно, вы использовали новую функцию отслеживания слияний в SVN 1.5+? При слиянии будет добавлено / изменено свойство svn:mergeinfo
для задействованных файлов, даже тех, которые не были изменены. Затем они отображаются как изменения, которые необходимо внести.
См. http://svnbook.red-bean.com/en/1.5/svn.branchmerge.basicmerging.html.
Окончания строк могут измениться, если ваши текстовые файлы не имеют svn:eol-style
свойство установлено в native
и если вы просто открыли их в редакторе, то сохранили их.
Некоторые редакторы и инструменты автоматически конвертируют файлы в их собственную версию EOL (например, изменяя конец строки LF на CRLF).
Проверьте эту ссылку, чтобы иметь полное описание этого свойства.
svn:eol-style
должен быть установлен вручную для каждого текстового файла, поэтому есть способ сделать это автоматически по расширению файла, отредактировав файл конфигурации клиента - использовать настройки TortoiseSVN, общие настройки, редактировать файл конфигурации Subversion; или проверьте эту ссылку и найдите enable-auto-props
запись.