Я только что заметил этот вопрос о восстановлении с клона без --stdlayout. Я не нашел документацию этого флага - что он делает?
Что делает -stdlayout в git svn clone?
Ответ 1
Subversion не имеет понятия ветки или тега. Вместо этого они обычно моделируются путем простого копирования содержимого репозитория в каталог.
Чтобы git svn
мог распознавать ветки и теги и основную ветку ( "trunk" ), вам нужно явно указать, где их найти, используя --tags
(или -t
), --branches
(или -b
) и --trunk
(или -t
).
Однако многие репозитории Subversion следуют стандартным соглашениям, изложенным в книге Subversion, --trunk=/trunk --branches=/branches --tags=/tags
. --stdlayout
(или -s
) кодирует это соглашение, поэтому вам не нужно передавать одни и те же аргументы каждый раз, когда вы клонируете репозиторий Subversion.
Вы можете найти эту информацию на странице руководства git-svn(1)
, доступ к которой вы можете получить в Unix с помощью man git-svn
и независимо от операционной системы через встроенную справочную систему Git с git help svn
. Все страницы Git man также доступны на Kernel.Org, и они обычно являются первым результатом поиска при поиске git-svn(1)
.
Ответ 2
--stdlayout
(-s
) сообщает git-svn
, что папки в /branches
должны быть импортированы как ветки, а папки в /tags
являются моментальными снимками состояния проекта и должны быть импортированы как теги. Ведущая ветвь будет установлена на /trunk
.
Это эквивалентно --trunk=trunk --tags=tags --branches=branches