Я развертываю приложение Rails на Heroku (на данный момент) через git, и также хотел бы иметь общедоступную версию, чтобы люди могли взглянуть на нее. . Некоторые файлы являются конфиденциальными и должны быть зафиксированы и отправлены только в ветку «heroku», но не в ветку «public». Как лучше всего это сделать?
(Я делаю знает о переменных конфигурации Heroku, которые отлично подходят как временное решение, но не весело, если и когда мне нужно переключать хосты.)
Две ветки не нужно синхронизировать постоянно - я в порядке с периодическим слиянием "основной" ветки с "общедоступной" веткой и отправкой ее в github отдельно.
Я пробовал разные вещи:
отдельные .gitignore
файлы и «нашу» стратегию слияния - сначала это не сработало, и после того, как я некоторое время возился с этим, я решил, что это становится слишком сложным, чтобы я мог выполнить, казалось бы, простую задачу
, используя пользовательский ex clude
файл и добавление следующего в .git / config
... это просто не сработало:
.git / config
[branch "public"]
excludesfile = +info/exclude_from_public
Как лучше всего иметь частный и публичный репозиторий использует один и тот же код, но игнорирует важные файлы в публичном репозитории?
Вы можете предположить, что никакой код не был зафиксирован или отправлен, то есть это только что инициализированный репозиторий.
(Этот вопрос задавался раньше в различных формах, но ни один из ответов не был однозначным или ответы казались действительно хакерскими. Я здесь, чтобы задать этот вопрос очень простым образом, и, надеюсь, получите очень простой ответ.)