2012-01-22 2 views
4

У меня есть приложение, которое я хочу разместить на Heroku. У него есть конфиденциальная информация о базе данных, которую я не хочу вставлять в публичное репо на github ... Однако я не могу добавить его в файл gitignore, потому что тогда он не попадет в герою.Условный .gitignore на основе происхождения

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

+0

В зависимости от характера и объема информации, альтернативной может быть использование переменной окружения. Взгляните на [Heroku docs on config vars] (http://devcenter.heroku.com/articles/config-vars). – matt

ответ

5

К сожалению, нет. Git не поддерживает эту функцию, поэтому вам, вероятно, не повезло. Существуют различные способы получения файлов с локальным игнорированием в разных хранилищах (.git/info/exclude) или на разных компьютерах (глобальное игнорирование), но не на основе исходного кода.

Простейшим решением для работы может быть «общедоступная» ветвь, в которой этот файл удален, и крюк предварительной фиксации, чтобы гарантировать, что публичная ветка никогда не принимала фиксацию, которая ее добавила.

Никаких заверений, которые никогда не будут просачивать капли в общедоступную копию.

+3

хорошо, что действительно воняет – sethvargo

0

Вы можете посмотреть в Heroku db:push

Я использовал это, чтобы синхронизировать данные, и вы все еще можете игнорировать все дб ​​информацию.

Смежные вопросы