Keep settings in branch
branch, branching-and-merging, git, git-branch, version-control
Solution
In your personal branch, you could keep:
- the GitHub config file unchanged (with no value), but with a different name (`config.template` for example)
- a "value file" with your personal value
- a "smudge" script able to generate the actual config file using the template one and your personal values
That script is triggered on any `git checkout` as a content filter driver.
That way, you can merge `master` onto your personal branch as many time as you want, your config values will not be modified.
Problem
I begin to use git for software development. I have a project on github. This project also involves some user-settings stored in dedicated settings-files. On github the settings should be empty (like this) ``` ### Settings: ## Your name $name = ""; ## Your email adress $email = ""; ## and so on ``` However, I also have the project running on my computer (or server). My personal version of the project should have all settings filled out. I would like to have two branches for that. The personal branch should contain all my settings. The master branch should be the one where I develop the software and which I upload to github. I would like to merge the master branch into the personal branch from time to time to keep my system up-to-date. However, whenever I try to merge the branches, my personal settings get lost. Is there a way to do this or am I just doing something wrong (what)?