На самом деле это распространенный вопрос, и я настоятельно рекомендую вам рассмотреть главу SVNBook «Игнорирование неверсионных элементов» , которая охватывает его.
См. Важный отрывок из SVNBook, в котором объясняется поведение:
Поддержка Subversion игнорируемых шаблонов файлов распространяется только на
одноразовый процесс добавления неверсионных файлов и каталогов в
контроль версий . Когда объект находится под контролем Subversion,
механизмы игнорирования шаблонов больше не применяются к нему. Другими словами, не
ожидайте, что Subversion избежит внесения изменений, которые вы внесли в
версионный файл просто потому, что имя этого файла соответствует игнорированию
шаблон - Subversion всегда замечает все свои версионные объекты.
Согласно выводу svn status
ваша рабочая копия содержит один неверсионный элемент (тот, у которого есть знак '?' ) и один отсутствующий элемент (тот, у которого есть ' ! ' знак) .
? something.aux
! somethingelse.aux
Итак, вы вручную удалили (то есть через Windows Explorer, но не через клиента SVN) somethingelse.aux
и теперь он имеет статус «отсутствует». Другой файл something.aux
по-прежнему не версионен и не игнорируется.
Если вы не набрали неправильно команду svn propset
, зафиксировали изменение свойства, и файл все еще имеет неверсионный статус, вы можете найти этот отрывок полезным:
шаблоны, найденные в свойстве svn: ignore, применяются только к
каталог, в котором установлено это свойство, а не какой-либо из его
подкаталоги.
Кроме того, вы можете проверить свойство svn:ignore
, введя команду svn propget
.