Управление одним файлом в нескольких приложениях - PullRequest
1 голос
/ 10 июля 2019

У меня есть четыре или пять небольших веб-приложений, которые я создаю и поддерживаю для небольшой группы на работе.По большей части они имеют одинаковую структуру и структуру файла.Многие файлы одинаковы во всех приложениях.Вот пример файла index.js, который одинаков в каталоге src/ каждого приложения.

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';

if (process.env.NODE_ENV !== 'production') {
  console.log(`Environment: ${process.env.NODE_ENV}`);
}

const root = document.querySelector('#root');
ReactDOM.render(<App />, root);

Копирование и вставка работает нормально, пока мне не нужно что-то обновить.Несколько месяцев назад я начал заменять компоненты класса React на функциональные компоненты с перехватчиками.Единственная проблема заключается в том, что мне нужно вносить одно и то же изменение для каждой версии этого файла на каждом сайте.

Я пытался использовать bit и думал о создании локального пакета NPM, но это не так.Не идеальные варианты.Я должен был импортировать каждый файл, и это не работает так, как мне нужно.(Я думаю, я мог бы импортировать самый первый файл index.js, но это не кажется идеальным решением.)

Я хочу иметь возможность редактировать файл в приложении A, и в следующий раз я вернусьчтобы работать с приложением B, я могу видеть изменения, внесенные в файл в A, и перетаскивать их в B. Таким образом, я могу сделать каждый из общих файлов / компонентов достаточно динамичным, чтобы работать для всех моих приложений.Если изменения, внесенные в файл в приложении A, не работают для приложения B, я могу переработать файл в приложении B и извлечь измененный файл в следующий раз, когда буду работать над приложением A.

Надеюсь, это имеет смысл.Заранее благодарим за любую помощь, которую вы можете предложить!

1 Ответ

1 голос
/ 23 июля 2019

Я полагаю, git submodules может быть правильным вариантом для вас, особенно для части изменений push / pull.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...