SVN Checkout на основе автора - PullRequest
0 голосов
/ 04 февраля 2012

Как извлекать файлы из папки на основе имени автора. Например, в папке есть 100 файлов, созданных более чем 10 пользователями. Мне нужно оформить заказ или экспортировать только файлы, созданные конкретным пользователем.возможный?я пробовал svnlook но это не правильный путь

1 Ответ

2 голосов
/ 04 февраля 2012

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

Должна быть возможность создания командного файла / сценария оболочки со следующими частями:

  1. Перебирать все файлы каталога.
  2. Вызовите для каждого файла команду svn info <filename>.
  3. Фильтр с выходной строки: Last Changed Author: <author>. Как говорится в выводе, он является автором последнего изменения. Если вас интересует первый автор, это должно быть доступно через команду svn log <filename> с некоторой дополнительной фильтрацией.
  4. Скопируйте этот файл в место, где вы хотите, чтобы он был.

Если вы хотите, чтобы файлы находились под контролем версий Subversion, вам нужно оформить заказ, но затем отфильтровать все файлы не от автора:

  1. Извлечь этот каталог (только файлы): svn checkout --depth files.
  2. Перебирать все файлы и выполнять для каждого файла , а не от автора: svn update --set-depth exclude <filename>.
...