2013-07-08 3 views
3

я встречаю какое-то странное для меня разница между слиянием и запись только слияние ...Subversion: запись только объединить

svn merge "^/branches/release-8.0" . 
--- Merging r22415 through r22446 into '.': 
G . 
--- Recording mergeinfo for merge of r22415 through r22446 into '.': 
U . 

... revert ... 

svn merge --record-only "^/branches/release-8.0" . 
--- Merging r2 through r22414 into '.': 
G . 
--- Merging r22415 through r22446 into '.': 
G . 
--- Recording mergeinfo for merge of r22415 through r22446 into '.': 
G . 

во втором случае выполняется слияние r2 через r22414, что не ожидается. Это займет ~ 5 минут, поэтому сначала я думаю, что это повешено. (Первое слияние займет 2-3 секунды.)

Merge информация:

trunk: 
svn pg svn:mergeinfo 
<empty> 

branch 
svn pg svn:mergeinfo 
/trunk:22415-22439 

не известно, какая дополнительная информация может помочь, потому что на тестовом примере это не воспроизводится.

Subversion 1.7:

svn, version 1.7.10 (r1485443) 
    compiled Jun 1 2013, 09:36:13 

Может быть какие-то догадки?

ответ

0

похоже, что предыдущее слияние было на r22414, поэтому ваш mergeinfo содержит информацию об этом. Попробуйте это, чтобы узнать, есть ли у вас это: svn propget svn: mergeinfo

1) это СМЕРТЬ изменения, начиная с последнего слияния. Таким образом, r22415 через r22446 - Обратите внимание, что это фактическое слияние

2) это ЗАПИСЬ (только для записи), которая объединяет информацию в вашу рабочую папку. Из-за отсутствия информации о слиянии до r22414, она добавляет его в ваш mergeinfo. Именно по этой причине это длится долго. - Обратите внимание, что это не слияние, а только запись в вашу рабочую папку.

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