SVN: Как автоматически удалить рабочую копию, но сохранить пропущенные элементы? - PullRequest
3 голосов
/ 28 июня 2011

В настоящее время у меня есть рабочая копия с двумя ветвями:

/Source
/Source/v1.2
/Source/v1.3

Я хочу удалить это и вместо этого только проверить нужную мне ветку (то есть перейти на один уровень вниз по дереву каталогов и только проверитьout /Source/v1.3).Однако рабочая копия v1.3 содержит кучу игнорируемых файлов, которые я на самом деле хочу сохранить.Поэтому я не хочу просто удалить всю рабочую копию и начать все сначала.И, конечно, я не хочу вручную пытаться найти все игнорируемые файлы и сохранить их.Есть ли какая-либо команда для этого?

Я на Windows использую TortoiseSVN, а также Slik SVN для автоматизированных сборок.

1 Ответ

2 голосов
/ 28 июня 2011

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

Нет причин, по которым вы не можете просто использовать нужный подкаталог в качестве нового рабочего каталога и удалить остальные.Фактически, вы можете даже переименовать верхнее дерево подкаталогов, как только вы его уберете.В этом примере вы перемещаете каталог v1.3 на диск C: \ и переименовываете его в \ Source-v1.3.Затем, удалив остальные:

C:\> cd \Source
C:\Source> move v1.3 \Source-v1.3
C:\Source> cd ..
C:\> rd Source /s/q
C:\> cd Source-v1.3
C:\Source-v1.3> svn update

Это позволит сохранить все файлы и каталоги, которые вы проигнорировали, игнорировать.

...