При импорте локального репозитория из Subversion в Git существует маленькая проблема: при запуске команды git svn clone получаем ошибку:
Очень странно, что разработчики не стали устранять эту ошибку. Обойти эту ошибку можно следующим образом.
Для этого потребуется (желательно) последняя версия TortoiseSVN.
1. Если TortoiseSVN уже установлена, то переходим к шагу (3). Иначе (2).
2. Качаем последнюю версию TortoiseSVN и распаковываем этот файл (как это сделать).
Скорее всего потребуется скопировать файлы из <папка распаковки>\SourceDir\Program Files\TortoiseSVN\Win\System64 (для x64 версии TortoiseSVN) или System (для x86 версии TortoiseSVN) в <папка распаковки>\SourceDir\Program Files\TortoiseSVN\bin.
3. Запускаем интерпретатор командной строки и переходим в папку TortoiseSVN\bin:
По завершению импорта сервер Subversion автоматически прекратит работу. Если нужно изменить настройки импорта, то процесс повторяется с шага 4.
Для простоты я использую следующий командный файл:
Permission denied: Can't open '/tmp/report.tmp': Permission denied at /usr/lib/perl5/site_perl/Git/SVN.pm line 1210
Очень странно, что разработчики не стали устранять эту ошибку. Обойти эту ошибку можно следующим образом.
Для этого потребуется (желательно) последняя версия TortoiseSVN.
1. Если TortoiseSVN уже установлена, то переходим к шагу (3). Иначе (2).
2. Качаем последнюю версию TortoiseSVN и распаковываем этот файл (как это сделать).
Скорее всего потребуется скопировать файлы из <папка распаковки>\SourceDir\Program Files\TortoiseSVN\Win\System64 (для x64 версии TortoiseSVN) или System (для x86 версии TortoiseSVN) в <папка распаковки>\SourceDir\Program Files\TortoiseSVN\bin.
3. Запускаем интерпретатор командной строки и переходим в папку TortoiseSVN\bin:
cd "c:\Program Files\TortoiseSVN\bin" cd "<папка распаковки>\SourceDir\Program Files\TortoiseSVN\bin"4. Запускаем сервер Subversion с помощью команды:
svnserve.exe -X --root d:\path\to\svn\repo5. Запускаем процесс импортирования в Git shell:
mkdir /path/to/git/repo git svn clone svn://localhost/ /path/to/git/repoи видим, что процесс успешно выполняется
По завершению импорта сервер Subversion автоматически прекратит работу. Если нужно изменить настройки импорта, то процесс повторяется с шага 4.
Для простоты я использую следующий командный файл:
@echo off if "%1" == "" ( set SVN_REPO=d:\Projects\VCS\Subversion ) else ( set SVN_REPO=%1 ) echo use repo at %SVN_REPO% set ROOT_DIR=%~dp0 if not exist "%ROOT_DIR%unpack" ( for /F "delims=" %%i IN ('dir /b TortoiseSVN-*.msi') do ( msiexec /a %%i /qb TARGETDIR="%ROOT_DIR%unpack" copy "%ROOT_DIR%unpack\Program Files\TortoiseSVN\Win\System64\*.*" "%ROOT_DIR%unpack\Program Files\TortoiseSVN\bin" ) ) "%ROOT_DIR%unpack\Program Files\TortoiseSVN\bin\svnserve.exe" -X --root %SVN_REPO% pauseЗапишите его в тут папку, где находится файл установки TortoiseSVN. При необходимости модифицируйте имя путь по умолчанию к репозиторию Subversion или задайте его как параметр файла.
В строчке 11 обратный слеш после %ROOT_DIR% есть, а вот в строчках 13,14,17 его нет, получается если переменная %ROOT_DIR% заканчивается на \ то скрипт сработает, а в противном случае не сработает.
ОтветитьУдалитьСогласен, что есть некоторая несогласованность. Поскольку %~dp0 всегда даёт каталог с \ на конце, поэтому убираю его в строке 11.
УдалитьСпасибо!
Я видел комментарии людей, которые уже получили ссуду от г-на Бенджамина Ли, и я решил подать заявку в соответствии с их рекомендациями, и всего через 5 дней я подтвердил свою ссуду на моем банковском счете на общую сумму 850 000,00 долларов США, которую я запросил. Это действительно отличная новость, и я советую всем, кому нужен настоящий кредитор, подать заявку по электронной почте: 247officedept@gmail.com или WhatsApp: + 1-989-394-3740. Я счастлив, что получил ссуду, о которой просил.
ОтветитьУдалить