For about 7 years, I have managed my dotfiles from my home directory in a github repo and symlinked the files on the system where I wanted to use them. I recently had a catastrophic system upgrade (of my own doing) and had to rebuild a lot of my home directory configuration. As it turned out, I didn't have everything under version control.
I started basically where I left off and just used the ones I had, and started to add the ones that were missing. Then I thought, "I have seen dotfile managers before, I wonder what they can offer me that my current solution is missing?"
There are quite a few options out there, but ultimately the two I narrowed it down to were Chezmoi and YADM. Both have a very similar approach so feature-by-feature for the things I use, they looked pretty much the same. However, I am going to go forward with Chezmoi because of the ability to template things with something that looks an awful lot like jinja, and integrate password management with LastPass.
I like the more seamless git integration with YADM, but it's the templates and password manager + encryption of Chezmoi that is pushing me that direction. The passwords were ultimately what was making me look at different options anyway. I didn't want to hack together something in my existing workflow to encrypt things to publish to github. Hopefully this will allow me to do it.
Since Chezmoi is written in go, I'm going to be at the mercy of the community as far as any sort of customization goes. I don't know go, so hopefully there isn't any need for customization because templates solve all the problems I would be likely to encounter.