2009-05-18 4 views
1

У меня есть каталог, который сошел с той части туловища, которую я проверил, что не имеет отношения к моим интересам. Как использовать Tortoise SVN для удаления этой папки из моей системы и остановки SVN от попыток дать мне обновления без удаления его из репозитория?Удаление нерелевантных каталогов с SVN

+0

Это немного старый, но 1,6 представил '' Exlude http://stackoverflow.com/questions/588024/how-to-ignore-specific-subversion-subdirectories-during-commit – Glenn

ответ

4

Я не использовал его сам еще, но посмотрите на разреженных каталогами:

http://svnbook.red-bean.com/en/1.5/svn.advanced.sparsedirs.html

Subversion 1.5 появилась функция под названием редкие каталоги (или мелкие извлечений), что позволяет легко проверьте рабочую копию или часть рабочей копии - более мелкую, чем полную рекурсию, с возможностью вносить ранее проигнорированные файлы и подкаталоги позднее.

...

Вы можете в этот момент будет интересно, «Ну и что? Когда я буду использовать это? »Один сценарий, когда эта функция находит утилиту, привязана к определенному макету репозитория, в частности, когда у вас есть много связанных или зависимых проектов или модулей программного обеспечения, которые живут как братья и сестры в одном месте репозитория (trunk/project1, trunk/project2 , багажник/проект3 и т. д.). В таких сценариях может возникнуть случай, когда вы лично заботитесь только о немногих из этих проектов - возможно, о каком-то основном проекте и нескольких других модулях, от которых это зависит. Вы можете проверить отдельные рабочие копии всех этих вещей, но эти рабочие копии не пересекаются и, как результат, может быть громоздким для выполнения операций по нескольким или всем из них в одно и то же время. Альтернативой является использование функции редких каталогов, создание единой рабочей копии, содержащей только те модули, которые вам интересны. Вы начнете с проверки пустой копии общего родительского каталога проектов, а затем с бесконечной глубиной обновите только те элементы, которые хотите иметь, как мы продемонстрировали в предыдущем примере. Подумайте об этом, как о том, как использовать систему для копирования копий граждан.

0

Насколько я знаю, выборочно игнорировать записи при проверке. Когда вы просматриваете URL-адрес SVN, вы получаете все под ним.

Так что, если ваш проект имеет следующую структуру:

\trunk\Dir1 
\trunk\Dir2 
\trunk\Dir3 

Вы можете получить все \ ствола, или по отдельности проверить каждую dir1, dir2 или DIR3 их собственных рабочих каталоги. Попытка проверить багажник, но исключая Dir2, например, не поддерживается.

0

если вы посмотрите на багажник, вы получите все. Если это ваше репо, организуйте его в соответствии с проектами/интересами. Какой смысл поддерживать все это и управлять версиями, если вы не можете понять, что это за год?

0

У вас есть несколько вариантов здесь:

  1. Просто удалите папку и не обновляют корень, только подкаталоги вблизи удаленной папки.

  2. Установить svn: игнорировать свойство в корневом каталоге, чтобы игнорировать ненужную папку и никогда не передавать корневой каталог.

  3. Вы можете установить tortoiseSvn для проверки определенных уровней под вашим корневым каталогом.Если ваша проблема связана с огромными файлами в каталоге uunneeded, вы можете проверить root только с дочерними элементами (один уровень), а затем использовать команду switch во всех каталогах, кроме ненужных, для проверки всех уровней под ними, чтобы сэкономить место с ненужными реж. Вы все равно увидите пустой ненужный каталог.