SVN, работающие копия к другому слиянию ответвления без, принимают на себя обязательство работать ответвление копии

Если рабочая копия (локальная копия) была создана из ответвления, позволяет, называют это A. Кодирование было сделано в ответвлении A, но ответвление A было "Закрыто" для фиксаций, и ответвление b было открыто. Как я объединяю свои рабочие изменения копии в Ответвление B и передаю ответвлению B, не передавая мои изменения в ответвлении первое.

Соединительная линия-> переходит A.

   I checked out branch A and made changes.
   Branch A was closed to commits.

Новое Ответвление создало из ответвления ответвление A.-> ответвление B.

   I would like to commit my working copy changes (currently pointing at Branch A into branch B without commiting to Branch A)
13
задан animuson 1 February 2012 в 22:32
поделиться

1 ответ

  1. Сделайте резервную копию вашей рабочей копии.
  2. svn переключить на ветку B
  3. просмотреть изменения (базовая ревизия может отличаться, а svn выполняет только слепые, тупые текстовые слияния), разрешить конфликты, если они есть
  4. зафиксировать

Выполнение действий вот так с рабочей копией с незафиксированными изменениями опасно. Если что-то пойдет не так или слишком много конфликтующих изменений, выполните откат к вашей резервной версии, создайте временную ветвь из базовой ревизии вашей рабочей копии A , переключитесь на нее и зафиксируйте свои изменения, чтобы они где-то в безопасности. Затем слейте эту ветвь с B , как хотите, а потом удалите ее.

Запомните svn-мантру: Зафиксируйте рано, сделайте чаще . Если у меня есть незафиксированные изменения более одного рабочего дня, я нервничаю. Обычно я создаю функциональную ветку для любой разработки, длящейся более нескольких часов. и регулярно придерживайтесь этого. Когда я закончу, я сливаю его с тем, откуда он появился, а потом удаляю.

16
ответ дан 1 December 2019 в 23:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: