I have a Rails app with a config/my_private_data.yml
file. I would like to push the entire app both to my test server and to github.
However, when I push to the test server, I want to include the private file. When I push to github, I don't want to include the private file. What is the easiest way to go about this?
You can set up two branches. master
and secret
. You can then add and commit the config/my_private_data.yml
in the secret
branch which you can then push into the master branch at the testserver.
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
Then do a git checkout secret; git rebase master
if you have new commits on master.
Don't commit on secret
and if you do, do a cherry pick of that commit.
Certainly, not all is good with this approach. From what I can think now, you could inadvertently push the secret branch to github. Also, you can't really work in master
if you need the my_private_data.yml
-file (you can do a checkout of that file from the secret branch though).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With