Ошибка командной строки коммутатора SVT от Tortoise - "Акция отсутствует обычная родословная"

Когда я пытаюсь выполнить "переключатель", чтобы изменить каталог на другую ветвь, я получаю странное сообщение об ошибке.

Это то, как создается репозиторий, глядя на него с веб-сайта хоста. Раньше у меня была ветка, называемая bugfix-lobby-quirks, но она была удалена после того, как я объединил ее с багажником. Это и новые карты с играми-оппонентами были разветвлены с багажника.

enter image description here

Теперь я хочу, чтобы моя обработанная рабочая копия "переключилась" из удаленной ветки в эту новую ветку. У меня есть ветка bugfix-lobby-quirks, уже проверенная на моем компьютере, так как я просто работал над ней. То, что я хочу сделать, - это переключить все в этой папке на все, что есть в новой ветки, которую я выбираю, что приятно, так как они не совсем разные. Это означает, что переключатель svn означает, что?

enter image description here

Итак, я нажимаю переключатель и появляется всплывающее окно. Он автоматически распознает ветвь и отображает ее в списке, поэтому я выбираю ее.

enter image description here

К сожалению, это приводит к появлению этого сообщения об ошибке каждый раз.

enter image description here

Это не счастливый день. Это печальный день.

Ok. Так что я делаю неправильно?

Ответы

Ответ 1

Установите флажок "игнорировать родословную" в диалоговом окне переключателя svn.

Ответ 2

Возможно, вы можете переключить удаленную ветвь на активную ветвь. Для Subversion эта ветка больше не существует. (И поскольку он не существует, он не разделяет каких-либо родословных).

Перейдите в рабочую копию удаленной ветки и посмотрите, можно ли обновить ее до того, как сама ветка удалена. Затем попробуйте переключатель.

Если это не сработает, вам нужно будет восстановить свою ветку. Это не сложно из командной строки. Скажем, ваша ветка была удалена в редакции 12345:

$ svn co --set-depth=immediates $URL/branches   # Checks out just branch names
$ cd branches
$ svn merge -c -12345 .                         # Removes branch delete

--set-depth=immediates будет проверять все ваши ветки, но не будет проверять проекты под ними. Это будет довольно быстрая проверка и даст вам рабочий каталог вашего каталога /branches. Теперь вы можете выполнить обратное слияние своего удаления и восстановить ветвь.

Если вы не хотите делать чек и слияние, вы можете сделать svn cp, где вы копируете ветвь из ревизии до ее удаления до текущей версии:

$ svn cp -r12344 $URL/branches/[email protected] $URL/branches

Это позволит вам восстановить ветку без предварительной проверки.

Ответ 3

Вы можете получить это, потому что пытались переключить одну из своих подпапок вместо того, чтобы делать папку верхнего уровня. То есть вы пытались переключить только ту же папку/приложение папки, а не тулу.