українська мова ▾ Topics ▾ Latest version ▾ git-svn last updated in 2.55.0

НАЗВА

git-svn — Двосторонній обмін даними між репозиторієм Subversion та Git

СИНОПСИС

git svn <command> [<options>] [<arguments>]

ОПИС

git svn — це простий канал для наборів змін між Subversion та Git. Він забезпечує двонаправлений потік змін між Subversion та репозиторієм Git.

git svn може відстежувати стандартний репозиторій Subversion, дотримуючись загальної структури «trunk/branches/tags», за допомогою опції --stdlayout. Він також може відстежувати гілки та теги в будь-якій структурі за допомогою опцій -T/-t/-b (див. опції для init нижче, а також команду clone).

Після відстеження репозиторію Subversion (за допомогою будь-якого з перерахованих вище методів), репозиторій Git можна оновити з Subversion командою fetch, а Subversion — з Git командою dcommit.

КОМАНДИ

init

Ініціалізує порожній репозиторій Git з додатковими теками метаданих для git svn. URL-адресу Subversion можна вказати як аргумент командного рядка або як повні аргументи URL-адреси для -T/-t/-b. За потреби, цільову теку для роботи можна вказати як другий аргумент. Зазвичай ця команда ініціалізує поточну теку.

-T<trunk-subdir>
--trunk=<trunk-subdir>
-t<tags-subdir>
--tags=<tags-subdir>
-b<branches-subdir>
--branches=<branches-subdir>
-s
--stdlayout

Це необовʼязкові параметри командного рядка для init. Кожен із цих прапорців може вказувати на відносний шлях до репозиторію (--tags=project/tags) або повну URL-адресу (--tags=https://foo.org/project/tags). Ви можете вказати більше одного параметра --tags та/або --branches, якщо ваш репозиторій Subversion розміщує теги або гілки за кількома шляхами. Параметр --stdlayout — це скорочений спосіб встановлення trunk,tags,branches як відносних шляхів, що є стандартним значенням Subversion. Якщо також вказано будь-які інші параметри, вони мають пріоритет.

--no-metadata

Встановлює параметр noMetadata у конфігурації [svn-remote]. Цей параметр не рекомендується використовувати; перед його застосуванням, будь ласка, ознайомтеся з розділом svn.noMetadata цієї сторінки довідки.

--use-svm-props

Встановити опцію useSvmProps у конфігурації [svn-remote].

--use-svnsync-props

Встановити опцію useSvnsyncProps у конфігурації [svn-remote].

--rewrite-root=<URL>

Встановити опцію rewriteRoot у конфігурації [svn-remote].

--rewrite-uuid=<UUID>

Встановити опцію rewriteUUID у конфігурації [svn-remote].

--username=<user>

Для транспортів, для яких SVN обробляє автентифікацію (http, https та звичайний svn), вкажіть імʼя користувача. Для інших транспортів (наприклад, svn+ssh://) необхідно включити імʼя користувача до URL-адреси, наприклад, svn+ssh://foo@svn.bar.com/project

--prefix=<prefix>

Дозволяє вказати префікс, який додається до імен віддалених репозиторіїв, якщо вказано trunk/branches/tags. Префікс автоматично не містить кінцевого слеша, тому переконайтеся, що ви додали його в аргумент, якщо це необхідно. Якщо вказано --branches/-b, префікс повинен містити кінцеву косу риску. У будь-якому випадку наполегливо рекомендується встановити префікс (з кінцевою скісною рискою), оскільки ваші посилання для відстеження SVN будуть розташовані в «refs/remotes/$prefix/», що сумісно з власною структурою посилань для відстеження віддалених репозиторіїв у Git (refs/remotes/$remote/). Встановлення префікса також корисно, якщо ви хочете відстежувати кілька проєктів, які використовують спільне сховище. Стандартно префікс встановлено як origin/.

Note
До версії Git версії 2.0 стандартним префіксом був "" (без префікса). Це означало, що посилання для SVN-відстеження розміщувалися в "refs/remotes/*", що несумісно з тим, як організовані власні посилання для віддаленого відстеження Git. Якщо ви все ще хочете використовувати старе стандартне значення, ви можете отримати його, передавши --prefix "" у командному рядку (--prefix="" може не працювати, якщо ваш Getopt::Long Perl < версії 2.37).
--ignore-refs=<regex>

При передачі до init або