Tortoisesvn не показывает правильный статус после коммита - PullRequest
3 голосов
/ 17 апреля 2010

Я собирался спросить об этом на tigris.org, однако у них есть поддержка на их форуме.

Моя среда: Windows 7 x64, Tortoisesvn последняя версия x64, простой репозиторий.

Что я делаю: Я добавляю новый файл в репо, а затем выполняю SVN Commit. Эта операция прошла успешно, и я вижу ее в репо из trac или напрямую.

Я ожидаю: Чтобы увидеть значок этого файла в виде зеленой галочки.

Что у меня есть: Я вижу синий значок ПЛЮС, как будто я не сделал коммит.

Однако, если я просто создаю какой-либо новый файл в этой папке (без каких-либо изменений или обновлений), значок немедленно меняется на галочку. Что за магия!

Я не ожидаю, что здесь кто-нибудь получит ответ, это может быть ошибкой, но кто знает))

Ура!

Ответы [ 3 ]

11 голосов
/ 06 мая 2011

Очистка проекта обычно исправляет значок. Щелкните правой кнопкой мыши по папке и выберите TortoiseSVN -> Очистить. Я подозреваю, что это обновляет кэш TortoiseSVN. (Моя среда также Win 7 x64)

Обновление: В TortoiseSVN 1.7 при очистке теперь появляется диалоговое окно с явным параметром «Обновить наложения оболочки». Из документации очистки ,

Обновление оверлеев оболочки

Иногда наложения оболочки, особенно в виде дерева в левой части проводника, не отображают текущее состояние, или кэш состояния не может распознать изменения. В этой ситуации вы можете использовать эту команду для принудительного обновления.

Обновление 2: Это можно автоматизировать в 1.7 с использованием TortoiseProc.exe и сценариев подключения на стороне клиента. После коммита я часто сталкиваюсь с несогласованным состоянием, поэтому я добавил скрипт ловушки после фиксации, заключающий следующую команду в пакетный файл с именем refresh_shell.bat,

"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:cleanup /nodlg /noui /refreshshell /pathfile:%1

(Пакетный файл необходим для принятия аргумента к временному файлу, содержащему пути, которые были зафиксированы.)

Также обратите внимание при настройке сценария перехвата, что путь рабочей копии - это дерево каталогов, для которого включена перехват.

См. Автоматизация TortoiseSVN для получения дополнительной информации об использовании TortoiseProc.exe и Настройки TortoiseSVN для получения дополнительной информации о скриптах подключения на стороне клиента.

2 голосов
/ 02 декабря 2010

Закрыть и открыть окно проводника не помогает. Убить TSVNCache.exe помогает процесс.

1 голос
/ 17 апреля 2010

Да, просто панель не обновляется, пока не будет выполнено другое действие. Я видел это и в Windows XP. Я думаю, что это ошибка в TortoiseSVN.

...