SVN не обнаруживает изменения при перезаписи файла - PullRequest
1 голос
/ 14 сентября 2011

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

Обновление: я не копирую рабочую копию обновленного кода (в источнике нет папок .svn.) Однако я заметил, что даты последнего изменения файлов старше, чемте, которые они заменили - Это помешало бы SVN обнаружить изменение?Также большинство файлов зашифрованы с использованием ioncube.

Ответы [ 4 ]

2 голосов
/ 14 сентября 2011

Локальные данные svn находятся внутри каждого каталога вашей рабочей копии (в каталоге .svn под каждым каталогом).Поэтому, если вы скопировали каталог из нового кода в каталог своего кода, включая подкаталоги, возможно, вы скопировали и их каталоги .svn.Это означает, что SVN не может знать, что это изменилось.

Если вы хотите выполнить рекурсивную замену кода в каталоге, вы должны убедиться, что код, который вы вставляете в существующий код, сам по себе не является рабочей копией или что он удален из каталогов .svn.Чтобы получить копию хранилища без wc, вы можете использовать svn export.

Последняя версия Subversion решает эту проблему, сохраняя метаданные только в корне wc, а не во всех подкаталогах.

0 голосов
/ 25 ноября 2016

Эти шаги помогли мне совершить. Чтобы обойти эту проблему, они тоже могут вам помочь.

  • Проверьте вашу папку svn-репозитория в пустой папке на рабочем столе. C: \ Users \ ömer \ Desktop \ SpringWebTest
  • откройте папку, которую вы извлекли, затем выберите и скопируйте папку .svn и вставьте ее в рабочую область проекта. C: \ Users \ ömer \ workspaceLuna \ SpringWebTest
  • Теперь изменения должны быть обнаружены, наконец, передайте изменения в хранилище SVN.
0 голосов
/ 14 сентября 2011

Я заметил, что даты последнего изменения файлов старше, чем те, которые они заменили

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

0 голосов
/ 14 сентября 2011

Убедитесь, что вы также не перезаписываете папку .svn.

Если вы удалите эту папку или замените ее другой папкой, у вас будут некоторые ошибки синхронизации и / или проблемы с целостностью SVN.

Что вы можете сделать (и что я обычно делаю с такими проблемами), это очистить все папки .svn из файловой системы вашего проекта и заново зафиксировать все.

Пожалуйста, взгляните на эту статью: http://thecrumb.com/2008/09/25/removing-svn-files-with-tortoisesvn/

А этот: http://www.anyexample.com/linux_bsd/bash/recursively_delete__svn_directories.xml

...