etckeeper, Git checkout, and broken file permissions in /etc
Solution 1:
According to the documentation (see below) you have to run
etckeeper init
after checking any files back out in order to restore permissions. git can't store file permissions directly so it's handled by etckeeper and you need to run the init again to restore them after a checkout.
Documentation section,
You can use any git commands you like, but do keep in mind that, if you check out a different branch or an old version, git is operating directly on your system's /etc. If you do decide to check out a branch or tag, make sure you run "etckeeper init" again, to get any metadata changes:
git checkout april_first_joke_etc
etckeeper init