Как поместить каталог из архива.tar в родительскую рабочую копию sparsed sparsed checkout

Предположим, у вас есть хранилище Subversion с каталогом / trunk / огромный, который огромен (тысячи файлов> 1G) и не очень часто меняется.

Вы проверяете это редко, избегая / багажник / огромный, например

svn co --depth immediates ^/trunk trunk
for f in trunk/*; do 
  if [ "$f" != "trunk/huge" ]; 
  then 
    svn up --set-depth infinity $f; 
  fi; 
done

Позднее вам внезапно понадобятся файлы в ^/trunk/ огромные.
Стандартный способ получить это было бы изменить его "глубину"

svn up --set-depth invinity trunk/huge

Это работает, но

  1. Должен передавать много данных по сети
  2. Положите больше нагрузки на сервер subverion
  3. Занимает очень много времени

Предположим, что я уже проверил ^/trunk/ огромный и сделал.tar.gz из этого. Теперь я хочу поместить этот.tar.gz в мою локальную рабочую копию. Если я просто положу его туда, subverion будет считать его "неизвестным", например:

svn st
?       trunk/huge

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

svn up --set-depth infinity trunk/huge
At revision 8655.
svn st
?       trunk/huge

Как мне сообщить Subversion, что этот "неизвестный" каталог теперь является "не разреженным" извлечением реальной вещи?

0 ответов

Другие вопросы по тегам