С трудом справлялся с моим первым большим слиянием каталогов и надеялся понять, почему я получаю эти ошибки.
Я разветвил код в trunk / неделю назад и внес много измененийк коду в ветках / myBranch, и решил, что пришло время объединить их в транк /.С тех пор ни один код не был затронут в стволе, он точно такой же, как когда разветвлялся новый код, поэтому я подумал, что это означает, что не может возникнуть никаких конфликтов.
Ложное предположение, кажется, насколько я знаю, получаюкуча конфликтов при попытке слить новый код в транк и сообщения об отсутствующих файлах.Может кто-нибудь уточнить, почему это происходит?
Это основные факты:
- Код был разветвлен в редакции 19466.
- С тех пор ствол не тронут.Без изменений (Last Changed Rev: 19453).
- Ветвь была (к сожалению?) Сделана локально, включая некоторые изменения.
- Я попытался объединить изменения из ствола вступления ветви, используя следующую команду:
svn merge -r19466:HEAD branches/myBranch trunk/
.(Не имело значения, стою ли я в транке и пропускаю последний аргумент или просто делаю вышеописанное) Subversion жалуется на отсутствующий файл, fooDao.! C trunk/fooDao.java
> local missing, incoming edit upon merge
Этот файл был переименован в том же коммите, в котором была создана ветвь (19466), но я подумал, что Subversion должен подхватить его, поскольку он был выпущен с использованием svn move
.Журнал показывает его происхождение:
... A /branches/myBranch/fooDao.java (из /branches/myBranch/fooDato.java:19452)
- Если вам интереснопочему номера ревизий увеличиваются даже без изменений кода, это потому, что это общий репозиторий, содержащий много других (активных проектов).