Git-организация

Новичок в git, и у меня организационная проблема.

У меня есть файл с именем MASTER и файл с именем OBJECTIVE. В зависимости от конкретного параметра в MASTER, OBJECTIVE будет реализовывать либо один алгоритм, либо другой. Я хотел бы, чтобы выходные данные обеих версий были активны в моем репозитории git, но я не хочу переименовывать файлы на основе используемого алгоритма.

Есть ли лучшая практика для чего-то подобного в git?


person carrotcake    schedule 09.08.2016    source источник
comment
Я не слишком уверен, считается ли это лучшей практикой, но использование отдельных ветвей?   -  person R Nar    schedule 09.08.2016
comment
Вы хотите, чтобы два разных файла журнала имели одинаковое имя....? Почему?   -  person matmo    schedule 09.08.2016
comment
Мне кажется, что ваша проблема не в том, как что-то сделать, а в том, что вы не знаете самого Git. Я настоятельно рекомендую просмотреть это простое объяснение Git rogerdudler.github.io/git-guide. После этого вы должны проверить этот guides.github.com/introduction/flow. Это должно помочь вам лучше понять, как работает Git. Обладая этими базовыми знаниями, вы можете перейти к более подробному объяснению на странице atlassian.com/git/tutorials/comparing-workflows/.   -  person David Gatti    schedule 10.08.2016


Ответы (2)


Похоже, вам нужно

\MASTER
\OBJECTIVE.algorithm1
\OBJECTIVE.algorithm2

а затем некоторый процесс, который копирует один из последних двух файлов в

\OBJECTIVE

В большинстве подобных сценариев OBJECTIVE не будет зафиксирован в репозитории, поскольку это сгенерированный файл.

person Seth    schedule 09.08.2016

Я не думаю, что git - правильный подход здесь. Максимум, что вы можете сделать, это иметь вторую ветку для второй реализации, но это испортит вашу историю git для реализации, выполненной вне ветки.

Скорее я предлагаю сделать именно то, что вы сказали. Пусть программа принимает аргумент времени выполнения либо в виде флага, аналогичного chmod, либо в виде некоторого < href="https://en.wikipedia.org/wiki/Environment_variable" rel="nofollow">переменная среды.

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

person Frank    schedule 09.08.2016