Как удалить файл локально в Subversion? - PullRequest
1 голос
/ 09 января 2012

Я пытаюсь локально удалить файл, который находится под контролем версий Subversion, но не влияя на статус файла в хранилище.

Это базовая последовательность, которую я проделал, чтобы достичь текущего ситуация:

svn co https://..../Path/to/project --depth empty

С помощью --depth empty swicht это создает пустой каталог ./Path/to/project, хотя каталог не является пустым в хранилище.

Я перехожу вкаталог:

cd Path/to/project

и получить некоторые файлы из хранилища

svn up file.1
svn up file.2
svn up file.3

Позже я решаю, что больше не хочу видеть file.2 локально.Как мне этого добиться?То есть, местная ситуация такова, как будто я никогда не делал svn up file.2.

Ответы [ 2 ]

1 голос
/ 09 января 2012

То, что вы пытаетесь достичь, поддерживается начиная с Subversion 1.6 (я тоже этого не знал). Вы должны использовать опцию svn update --set-depth exclude many-dirs/unwanted-dir.

Таким образом, в вашем случае следующая команда должна удалить файл (только) локально и не будет отображаться при выполнении svn st:

svn update --set-depth exclude file.2

См. Документацию для редких проверок в SVN red book


Проверив его еще раз на простом примере, я заметил, что он работает для каталогов, но не для файлов. Я проверил это только с помощью комбинации TortoiseSVN 1.6.x и SVN server 1.6.x, поэтому я не могу сказать, работает ли она с SVN 1.7.

0 голосов
/ 09 января 2012

Все просто. Вам просто нужно удалить file.2 локально (на уровне файловой системы). Если вы работаете в UNIX, запустите команду rm file.2 в вашей рабочей копии (путь, по которому вы извлекли файлы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...