Я очень новичок в Subversion, но годами пользуюсь другими системами контроля версий, такими как ClearCase.
Мой начальник попросил меня исправить этот проект, чтобы он мог быть построен с помощью Maven вместо Ant. Одна из важных вещей, которые мне нужно было сделать, - это переместиться с src/com
на src/main/java/com
и переместиться с test/com
на src/test/java/com
, что я и сделал с помощью команды svn mv
. Я глупо предположил, что, поскольку я использовал команды Subversion для перемещения каталогов, тогда Subversion будет знать, что все было перемещено. И когда я слил свою ветку в ствол, оказалось, что она работает. Но теперь кто-то еще только что закончил работу над веткой, которую он разветвлял до моей работы. Итак, мы собираемся объединить его вещи в транк, и в основном Subversion, кажется, думает «хорошо, он внес изменения в src/com/foo/bar/baz.java
, но этот каталог больше не существует, поэтому он не имеет значения, поэтому откажитесь от него» * 1010 * вместо того, что я ожидал, что было «хорошо, он внес изменения в src/com/foo/bar/baz.java
, но src/com
был перемещен, поэтому мне нужно объединить это в src/main/java/com/foo/bar/baz.java
» .
Есть ли способ заставить Subversion осуществлять управление ревизиями, или я собираюсь вручную объединить изменения этого парня в течение следующих двух дней?