Как я могу использовать существующий проект веб-интерфейса без разветвления? - PullRequest
2 голосов
/ 05 ноября 2019

Я ищу элегантный способ:

  1. Повторное использование проекта веб-интерфейса с открытым исходным кодом ( Apache Nifi UI ) в полном объеме
  2. Применитькуча локальных модификаций
  3. Поддержка 1 и 2 без необходимости раскошелиться на исходный проект

Локальные модификации не будут вытеснены вверх по течению, потому что владельцы оригинальных проектов не захотятих. Модификации включают поведенческие изменения в пользовательском интерфейсе (так называемые функциональные возможности javascript были изменены) и изменения структуры представления (например, удалены метки, полностью перестроены грани диалогов).

Есть ли способ для меня, чтобы обработать весьоригинальный веб-интерфейс проекта как зависимость и расширить / переопределить его реализацию различных компонентов пользовательского интерфейса и их действий из другого проекта?

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

Если вышесказанное невозможно без ре-архитектуры / ре-факторингаИсходный проект, существуют ли известные подходы и методы, которые могут быть применены к исходному проекту для достижения вышеуказанного?

1 Ответ

2 голосов
/ 05 ноября 2019

Вы можете рассмотреть возможность использования подмодуля git для закрепления версии, а затем применить изменения кода как патч в стиле context-diff. Но вам придется разрабатывать и тестировать в основном в форке, проверенной копии NiFi, чтобы выпустить этот патч.

...