Я сделал ошибку создания репозитория Подверсии без обычного trunk
, branches
, и tags
каталоги. Таким образом, корневой каталог проекта отображается на корневой каталог репозитория. Теперь я хочу создать ответвление функции, но нет никакого хорошего места для помещения его. То, что я хотел бы сделать, переместиться /
кому: /trunk
, сохранение его свойств и истории. Я не повезло?
Чистый способ сделать это - использовать svnadmin
для выгрузки всего репозитория с помощью
svnadmin dump
Затем создайте новый репозиторий с каталог trunk в корне и перезагрузите дамп с помощью
svnadmin load --parent-dir trunk
. Если вы выполните перемещение svn, то это испортит ситуацию, если вы когда-либо обновите ревизию перед перемещением, поскольку файлы вернутся в свое предыдущее местоположение, что, вероятно, не то, что вам нужно.
Как указано в других ответах, просто выполните svn mv в каталог trunk. Чтобы затем обновить рабочую копию, выполните команду svn switch.
Нельзя ли просто создать trunk dir и переместить все из / в trunk?
Вам нужно создать / trunk
и выполнить svn-перемещение всего содержимого root внутри ствола, а затем выполнить фиксацию.
После этого вы переключите
вашу рабочую копию на / trunk
.
Самый простой способ - создать "магистральный" каталог, а затем переместить в него все остальное. Вам придется копировать любые свойства вручную, но это не должно иметь большого значения. История ведется для каждого файла, поэтому она должна оставаться.
Другой вопрос, который следует рассмотреть, - есть ли у кого-нибудь еще открытый репозиторий. Слить будет сложно, поэтому перед тем, как сделать это, убедитесь, что у всех есть свои изменения.
Нет, просто создайте папку trunk
и переместите в нее все содержимое корня. Вы можете сделать это из проводника или через репо-браузер, история сохранится.