2015-06-30 2 views
2

Я работаю с S.V.N, Tortoise, VisualStudio, dot.net framework 4.0 и C#. Я хочу объединить ветку в багажник ... ну давайте будем честными, я просто хочу что-то слить, что угодно! Потому что я тестирую SVN, поэтому мы можем использовать его для нашего следующего проекта, не наступая друг на друга. Я уже знаю, как заботиться о конфликтах. Но мне также нужно знать, как объединить ветку. Но в любом случае я посвящаю все и разрешить все конфликты, есть еще некоторые условия, необходимые еще до нажатия на кнопку слияния:Рабочая копия НИКОГДА не готова к объединению

  1. Нет незавершенных модификации
  2. рабочую копию в одной ревизии
  3. Нет коммутируемые детей
  4. Полная рабочая копия

Что касается условий 3 и 4, все в порядке, даже я думал, что не понимаю, как я могу создать такие ситуации. Но условия 1 и 2 не в порядке. Зачем? Проект не содержит каких-либо конфликтов и, как было сделано правильно ... что мне здесь не хватает?

ответ

1

Я, наконец нашел что-то, в предыдущем окне, как раз перед 4 условием всплывающее и предотвратить слияние, есть возможность на очень Боттон этого предыдущего окна флажок, что предлагает это:

Perform pre-merge best practices check 

Я снимаю чек этой отметки. Больше нет условий для слияния! Я не знаю, хорошо ли это, но оно слилось правильно ... на этот раз.

1

Но состояние 1 и 2 не в порядке. Зачем?

Reintegrate merge (в comapre to sync merge) имеет больше требований к состоянию назначения (рабочей копии). Я верю, что наличие локальных модификаций и смешанных изменений может привести к некорректному слиянию из-за характера объединения реинтеграции. Я не уверен, что этот может решить с большим количеством усилий разработчиков Subversion dev, но текущая реализация требует состояния.

Рабочая копия НИКОГДА не готова объединить

Это просто исправить. Либо совершить локальные изменения:

cd <path to working copy root> 
svn commit -m "Unsaved work" 
svn up 

или вернуть их

cd <path to working copy root> 
svn revert . -R 
svn up 

, то ваш туалет готовы к воссоединительному слиянию.


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

+0

Я работаю с Tortoise, интегрированным в Windows, для того, чтобы объяснить это самым простым способом для моих партнеров, мне нужно, чтобы это было (строка командной строки бесплатна). Все, что мне нужно объединить, - это нажать на мой проект, так или иначе мой проект был правильно выполнен, поэтому это не то решение, которое я искал, даже подумал, что он полезен, я признаю. –

Смежные вопросы