Как я могу использовать функциональность SVNLook на клиентском компьютере
Вопрос
Все
Я хочу вызвать командную строку svnlook из моего сценария MSbuild с помощью команды Exec, однако вся прочитанная мной документация, похоже, указывает на то, что это можно запустить только на машине, на которой находится сам репозиторий (т.сервер.)
Кто-нибудь знает, как я могу получить доступ к этой функции с клиентского компьютера, существует ли клиентская оболочка для вызова этой функции (т.е.комбинация журнала svn и информации svn)??
Решение
svnlook работает непосредственно с базой данных репозитория.Эта база данных недоступна на клиентском компьютере (обычно, если вы не получаете доступ к репозиторию через file:///).Таким образом, нет возможности использовать svnlook.
Большую часть информации вы можете получить с помощью клиента svn.
вы не указали, какую именно информацию вы хотите, но я предлагаю использовать
svn log
svn diff
svn info
Другие советы
svn log -rev 'head' -v URL
это показывает аналогичный dirs_changed из svnlook
svn merge –dry-run -r BASE:HEAD .
Я использую простой скрипт svn-report.sh
для получения изменений за интервал ревизий (запуск сценария без параметров возвращает последнюю ревизию):
#!/bin/bash
# Reports SVN commits from version (parameter1) to version (parameter2)
if [ "$#" = "2" ]; then
echo "SVN commits for versions" $1 "till" $2
for (( i=$1; i<=$2; i++ ))
do
svn log -r $i -v
echo ""
done
else
echo "Usage: svn-report [from earlier revision number] [to latest revison number]"
echo "Example: ./svn-report.sh 30 35"
echo "Latest revison is:"
svn log -r head
fi