Сценарий, с которым я иногда сталкиваюсь:
Предположим, у вас есть ствол, из которого вы создали ветку релиза. После некоторых изменений в стволе (в частности, создания каталога "some-dir"), вы создаете ветку Feature / Fix, которую вы хотите позже объединить с веткой Release (поскольку изменения были достаточно малы, а функция / Fix важна для выпуска) .
trunk -- ... -- create "some-dir" -- ...
\ \-feature/fix branch
\- release branch
Если вы затем попытаетесь объединить ветку Feature / Fix непосредственно с веткой Release, вы получите конфликт дерева (даже если каталог даже не существовал в ветке Feature / Fix):
svn status
! C some-dir
> local missing or deleted or moved away, incoming file edit upon merge
Таким образом, вам нужно явно объединить коммиты, которые были сделаны в транке, перед созданием ветки feature / fix, которая создала каталог some-dir, прежде чем объединять ветку feature / fix.
Я часто забываю об этом, поскольку это не нужно в git.