Ответ 1
Как указано в FAQ: попробуйте выполнить очистку.
После того, как я фиксирую файлы, значки остаются либо измененными, либо ожидающими фиксации в течение длительного времени. Есть ли способ принудительно обновить, чтобы убедиться, что значок, который я вижу, является правильным состоянием файла?
Как указано в FAQ: попробуйте выполнить очистку.
Вы можете попробовать следующее:
TortoiseSVN → Настройки → Наложение значков, установите для параметра "Кэш состояния" значение "Шелл" вместо "По умолчанию"
Ref. к справке.
Shell Кэширование выполняется непосредственно внутри DLL файла расширения оболочки, но только для текущей видимой папки. Каждый раз, когда вы переходите к другой папке, информация о состоянии возвращается снова.
Преимущество: требуется только очень маленькая память (около 1 Мб ОЗУ) и может отображать статус в режиме реального времени.
Недостаток: поскольку кэшируется только одна папка, наложения не отображают статус рекурсивно. Для больших рабочих копий может потребоваться больше времени, чтобы показать папку в проводнике, чем с кешем по умолчанию. Кроме того, столбец
mime-type
недоступен.
Я опубликовал аналогичный ответ здесь, но чтобы спасти вас от открытия ссылки, я приведу здесь:
Я не уверен, что это точно связанные с вашей проблемой, но я нашел TortoiseSVN иногда может быть довольно медленный при работе с репозиториями которые имеют много файлов в них. Эта проявляется в tsvncache.exe процесс занимает много памяти. Процесс tsvncache.exe сканирует файлы и папки и ассоциирует знакомые значки с ними для обозначения измененные/проигнорированные и т.д. файлы.
Исправить это, чтобы сказать Tortoise SVN только кешировать папки, которые вы работая и игнорируя остальных. к сделайте это, щелкните правой кнопкой мыши свой проект папку и выберите TortoiseSVN- > Settings- > Icon Overlays. У меня есть пути исключения, установленные в c: * и d: * (в основном игнорировать все фиксированные диски) и Включить пути, установленные для моего проектов.
Закрытие окна Окно Explorer и повторное открытие. Чаще всего значок остается на древовидной части проводника Windows.
И нет - Clean Up и F5 не помогает. Я предполагаю, что это имеет какое-то отношение к Explorer, а не к TortoiseSVN.
В последнее время наткнулся на эту проблему. Обнаружено короткое и грязное обходное решение, которое оказалось на 100% эффективным.
Создайте пустой текстовый файл в папке, которую хотите обновить значки, щелкнув правой кнопкой мыши и выбрав "Создать" → "Текстовый документ". Значки должны волшебным образом обновляться. После этого, конечно, удалите пустой текстовый файл.
Если вы хотите проверить, все ли у вас есть, есть опция меню "svn check for changes". Если вы нажмете F5, он обновится и покажет вам правду. Если вас раздражает, что значки в папке устарели, вы можете отключить значки.
Я не знаю, было ли это связано, но нажатие F5
, похоже, помогает... иногда.
Мой опыт работы с TortoiseSVN заключается в том, что производительность как-то напрямую связана с количеством проверенных каталогов. Вы можете установить каталоги, которые должны быть включены/исключены в некоторых свойствах TortoiseSVN, чтобы ускорить процесс.
Перейдите в каталог, в котором вы хотите, чтобы значки обновлялись. Щелкните правой кнопкой мыши на этом каталоге с помощью мыши и в меню проводника контекста SVN выберите "очистка", а затем нажмите F5. Он должен обновить все значки SVN в этом каталоге для вас. Это было для меня.
Я работаю над огромным проектом с тысячами файлов, а очистка SVN очень быстро работает на моем компьютере, поэтому я делаю это на корневом уровне по большей части, тем самым обновляя все значки. Для медленных компьютеров без большой памяти полная очистка для большого проекта может занять некоторое время. В этом случае вы можете обновить только нужный каталог.
Кто-то говорит выше, что "очистка" вернет ваши локальные изменения, но это не обязательно так. Это не возвращается для меня... Кроме того, я не думаю, что это вариант, который вы должны включить. Иногда ваши локальные SVN-кэши повреждаются, и очистка исправляет их для вас... что часто является необходимостью для совершения ваших коммитов и т.д.
Надеюсь, что это поможет.
PS. Моя версия черепахи SVN: TortoiseSVN 1.6.16, Build 21511 - 64 бит
"Обновление" Windows (F5) в основном работает для меня (ОК, я тоже нажимаю на него), но иногда в окне нет каких-либо наложений на значок. В этих случаях "Очистка" также не помогает, независимо от того, какие параметры я выбираю, в том числе "Refresh Shell Overlays".
Я следовал за концом от gekowa:
TortoiseSVN → Настройки → Наложение значков, установите для параметра "Кэш состояния" значение "Шелл" вместо "По умолчанию"
и в следующий раз, когда я открою окно, наложения были правильными. Потребовалось несколько секунд, чтобы открыть окно, но все было сразу после этого. Я установил кэш состояния обратно в "Шелл", и время задержки тоже ушло.
Раньше я установил кэш состояния "Нет", но это не помогло.
У меня была аналогичная проблема. Я создал новую ветку, а потом проверил новую рабочую копию. В новой рабочей копии не было наложенных значков. Ничего не появилось. Только после убийства процесса TSVNCache.exe
через диспетчер задач Windows значки отображались правильно.
F5 тоже не работал у меня, но я нашел один F5 метод, который сработал.
Скажем, у вас есть папка, называемая проектами, и в ней есть папка с именем mysubversionedproject. Если вы развернете дерево проводника, вы увидите
Если вы сейчас нажмете F5, это может не сработать, как многие заметили.
Но если вы закроете это дерево, чтобы вы видели только
(и убедитесь, что вы также нажали на проекты, чтобы они были выбраны)
и нажмите F5, а затем снова разверните дерево, затем оно может работать.
Для меня, mysubversionedproject теперь имеет наложенную иконку, как и должно быть.
Исправить это, чтобы сказать Tortoise SVN только кешировать папки, которые вы работают и игнорируют других. Для этого щелкните правой кнопкой мыши и выберите TortoiseSVN- > Settings- > Icon Overlays. у меня есть Исключить пути, установленные на c: * и d: * (в основном игнорировать все фиксированные диски) и Включить пути, установленные в папку моих проектов.
Я сделал то же самое, что и Malice, но я снял флажки с фиксированных дисков и добавил C:\Users\YOURNAMEHERE\Documents * в каталог include. Работает очень хорошо для меня, поскольку все мои проекты находятся в этой папке.
Основываясь на ответе на noodle7: нужно изменить другой вариант:
TortoiseSVN → Настройки → Наложение значков, установите для параметра "Кэш состояния" значение "По умолчанию" вместо "Оболочка"
Это сработало для меня. TortoiseSVN 1.9.
Итак... из всех этих ответов/трюков/решений, честно все, что вам нужно сделать, это переключиться на другую ранее существующую ветку, используя раскрывающийся список - щелкните правой кнопкой мыши > Git Branch, затем переключитесь обратно в ветку, в которой вы были чтобы обновить значки состояния. Вуаля!