Мое приложение имеет 4 пакета Java.
com.me.utilities
com.me.widget
com.me.analysis
com.me.interface
Все пакеты зависят от утилит. Пакет виджета зависит от пакета интерфейса.
Утилиты могут быть полезны для других приложений, поэтому это должен быть отдельный пакет. Анализ не зависит от виджета и интерфейса, поэтому анализ должен быть отдельным пакетом. Интерфейс может измениться, потому что организация, с которой он взаимодействует, может обанкротиться, поэтому интерфейс должен быть отдельным пакетом.
Это всего лишь одно приложение, которое создает один исполняемый файл.
На основе этой организации я выполняю коммиты для каждого пакета, но не для исполняемого файла. Я хочу начать фиксировать исполняемый файл. Одним из способов было бы зафиксировать исполняемый файл в новом git-архиве без какой-либо связи с исходным кодом, но это звучит безрассудно, если иметь исполняемый файл и нет формального способа привязать его к исходному коду.
Другим способом, который звучит немного неэффективно, было бы просто запустить новый архив git, который «добавляет» исходный код всех 4 пакетов Java, каждый из которых имеет много файлов Java, а также «добавляет» исполняемый файл. Это кажется немного странным, потому что он не учитывает 4 существующих git-архива, которые уже знают о своих соответствующих коллекциях исходного кода.
Как правильно связать эти 4 пакета с их общим исполняемым файлом?
Я использую SmartGit для рутинных коммитов и командную строку git для возврата. Я готов прекратить использование SmartGit, если это необходимо для решения этого вопроса.