Наличие одного и того же неотслеживаемого файла в 2 разных ветках в Git? - PullRequest
0 голосов
/ 21 апреля 2020

Я начинаю с git, и у меня возникают проблемы, чтобы найти хорошее решение для моей проблемы.

У меня есть 2 ветви: Prod и Test, которые позволяют мне развернуть мое приложение на 2 разных средах. Я хотел бы, чтобы оба имели один и тот же файл конфигурации , но с другим содержанием.

Как я обнаружил в похожих постах, хотя я и хочу сохранить этот файл в gitignore, но я не могу перейти с одной на другую ветку с помощью этого решения.

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

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 21 апреля 2020

Наличие разных веток для prod и test может быть хлопотным и не имеет особого смысла. Обычно ветки используются для исправлений / новых функций, которые могут быть объединены с основной (основной) ветвью после того, как мы уверены, что это новое исправление / функция работает, а также не вызывает никаких побочных эффектов (т.е. все тесты проходят) в application.

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

В качестве альтернативы вы можете использовать обе конфигурации в одной и той же ветке ie (master) и позвольте вашему приложению работать с вашей конфигурацией теста или конфигурацией prod, которые должны использоваться на основе установленной вами переменной среды . Также рекомендуется gitignore в конфигурации prod, так как в некоторых случаях она может содержать секреты, такие как ключи API и идентификаторы клиентов.

Чтобы иметь тот же [именованный] конфигурационный файл, я бы сказал, что вы скорее сделаете что-нибудь например, config.dev, config.test, config.prod (gitingnore).

Также узнайте о потоке git, который является отраслевым стандартом и используется многими. (https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow)

0 голосов
/ 21 апреля 2020

Если вы хотите иметь разные версии одного и того же файла в разных ветвях, то просто зафиксируйте одну версию в одной ветке, скажем, master, а затем создайте новую ветку, например, из master, topic. Затем оформите topic и отредактируйте все, что вам нравится, не затрагивая версию на master.

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