Git: Использовать только приватный файл конфигурации для тестирования репозитория, а не для github? - PullRequest
5 голосов
/ 07 декабря 2011

У меня есть приложение Rails с файлом config/my_private_data.yml. Я хотел бы отправить все приложение как на мой тестовый сервер, так и на github.

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

1 Ответ

1 голос
/ 07 декабря 2011

Вы можете настроить две ветви. master и secret. Затем вы можете добавить и зафиксировать config/my_private_data.yml в ветви secret, которую затем можете вставить в основную ветку на тестовом сервере.

touch config/my_private_data.yml
git checkout -b secret
git add config/my_private_data.yml
git commit -m 'Commited secret file'
git push testserver_repo_url secret
git checkout master
git push repo_on_github master

Затем выполните git checkout secret; git rebase master, если у вас есть новые коммиты на мастере.
Не совершайте коммит на secret, и если вы это сделаете, сделайте выбор этого коммита.


Конечно, не все хорошо с таким подходом. Из того, что я могу думать сейчас, вы можете непреднамеренно подтолкнуть секретную ветвь к github. Кроме того, вы не сможете по-настоящему работать в master, если вам нужен my_private_data.yml -файл (хотя вы можете извлечь этот файл из секретной ветви).

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