Мерзавец перепутал при слиянии обновления в мое поддерево

Чтение приблизительно стирание типа должно помочь Вам понять это немного лучше.

Во времени выполнения, параметры типа для универсального класса , стерся . Значение, как cletus сказало, дженерики в Java являются в основном синтаксическим сахаром - они - только функция времени компиляции.

, Так как Spring, инстанцируют объектов во времени выполнения, это на самом деле свободно инстанцировать Dao из любого типа - и на самом деле, нет ничего мешающего ему создать Dao и передать в Student типы в некоторых методах и Teacher типы в другом.

Так в основном ответ, Spring понятия не имеет, что эти Dao тип предназначен, чтобы быть параметризованным и ничего не может сделать с ним.

19
задан VoxPelli 14 October 2013 в 11:54
поделиться

1 ответ

К сожалению, это ошибка (или отсутствующая функция) в "git merge -s subtree "code. Он фактически угадывает поддеревья, которые вы хотите объединить. Обычно это волшебным образом оказывается правильным, но если ваше поддерево содержит много изменений (или изначально было пустым, или что-то в этом роде), тогда это может привести к серьезному сбою.

Лучший способ обойти это:

  1. Объедините файлы, как вы делали выше.

  2. Вручную переместите все полученные файлы туда, где они должны исчезли.

  3. git commit -a --amend , чтобы исправить фиксацию слияния.

Будущие слияния, вероятно, будут работать нормально, если только этот каталог не будет постоянно находиться в невероятном количестве изменений.

Экспериментальный Команда " git subtree " имеет параметр - prefix , который должен позволить вам переопределить это, но, к сожалению, это не так.t работает в данный момент (так как это требует работы с функциями "git merge -s subtree", а времени на это не было).

В любом случае, это должна быть редкая ситуация, и обходной путь не потребуется даже для будущих слияний того же проекта.

19
ответ дан 30 November 2019 в 04:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: