Я не могу зафиксировать изменения после слияния в SVN
-
03-07-2019 - |
Вопрос
У меня возникла проблема с фиксацией изменений после объединения двух ветвей моего проекта с использованием TortoiseSVN.
Вот подробности:
Я сделал слияние ветви с магистралью проект над которым я сейчас работаю.
Проект включает основной репозиторий и библиотеки, объединенные с основным репозиторием как svn внешний (библиотеки также разветвлены) как подкаталог проект.
Когда я пытался внести изменения, TortoiseSVN сказал:
Commit A
re all the targets part of the same working copy?
Unable to lock 'D:\websites\project\lib'
Please execute the "Cleanup" command.
Конечно Очистка не помогло.
svn:внешний ключевое слово для проект каталог также был четко определен библиотека папка по-прежнему содержала соответствующую версию библиотек (trunk version).
И сервер, и клиент SVN находятся в версии 1.5.x (TortoiseSVN - 1.5.3.x).
С технической точки зрения оба проект и библиотеки являются проектами в одном и том же репозитории SVN.
Есть идеи, что пошло не так?
Я немного погуглил в поисках решения, но не нашел ничего полезного, поэтому попытался зафиксировать свои изменения в два этапа:
- фиксировать изменения из папки проекта
- зафиксируйте изменения из папки libraries
Что прошло без каких-либо проблем.
Но я все еще задаюсь вопросом, почему я не мог зафиксировать все за один коммит.
ПРАВКИ:
- (После ответа Кена Джи) Исправлена версия TortoiseSVN 1.3.x -> 1.5.3.x.
Решение
svn:внешний это приведет к тому, что Subversion объединит разные пути к репозиторию при извлечении, но в конечном итоге эти пути по-прежнему "не пересекаются", поэтому вам нужно выполнить два коммита, чтобы применить изменения.
Вот соответствующая цитата из Управление версиями с помощью Subversion
И Subversion по-прежнему работает по-настоящему только на несвязанных рабочих копиях.Так, например, если вы хотите зафиксировать изменения, которые вы внесли в одну или несколько из этих внешних рабочих копий, вы должны явно выполнить svn commit для этих рабочих копий —фиксация на первичная рабочая копия не будет рекурсироваться ни в какие внешние копии.
Другие советы
1.3 из TortoiseSVN является очень старый, последняя редакция - 1.5.x.Начиная с версии 1.3, как в Subversion, так и в TortoiseSVN произошли многочисленные изменения, поэтому обновление вашего клиента, вероятно, ваш лучший выбор.
Сказав это, 1.5 TortoiseSVN собирается создать / обновить рабочие копии до формата версии 1.5.БУДЬТЕ ОЧЕНЬ ОСТОРОЖНЫ при использовании TortoiseSVN (или любого SVN-клиента) против рабочей копии предыдущей Subversion.
Кажется, я помню, что читал об ошибке, связанной с этим в TortoiseSVN, которая была исправлена в последней версии.Проверьте последние примечания к выпуску.