Проблема
Як ви створюєте дрібну копію з git-svn з сховища Subversion, наприклад, як витягуєте лише останні три версії?
git clone
Команда може отримати останній п перегляди зі сховищ Git , якщо ви використовуєте опцію --depth
, тобто ви отримуєте неповну копію сховища. Приклад:
git clone --depth 3 git://some/repo myshallowcopyrepo
Чи є подібний варіант для git-svn?
Мої відкриття поки що
Поки що я лише знайшов -rN
варіант, де N
слід переглядати ревізію. Приклад:
git svn clone -rN svn://some/repo
Відповідно до документації є можливість використовувати -r$REVNUMBER:HEAD
. Я спробував наступне, щоб отримати останні 3 версії, які повернули повідомлення про помилку.
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
Тож я замінив HEAD~3
фактичну кількість третьої, але останньої редакції 534. Це спрацювало, але це вимагає, щоб я спершу з'ясував номер перегляду третього, але останнього перегляду.
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
Документація
--depth
для git svn
, так як підтримка вже є. І це вже має з’ясувати останню версію сервера?
-s is for --stdlayout which presumes the svn recommended layout for tags, trunk, and branches.
(але не працювало для мене)