I just stumble across dotstow which adds a git layer on top of it https://github.com/clayrisser/dotstow
I'm starting to wonder if I just have a very vanilla dotfile workflow compared to what some other people use. This would surprise me a bit, given how I tend to go overboard in custom configuration for most things, but it definitely feels like my experience isn't enough for me to understand why specialized tooling for dotfiles is needed.
For example, the .gitconfig for work is different from home (e.g. my username/email). Ditto for my .ssh/config and my shell aliases.
I also use Nix to manage all my tools, and the home-manager configuration is slightly different between mac & linux due to platform support.
I've gone through a few iterations of home-built solutions, including extending homeshick[1], before discovering YADM which implemented everything I had done but better.
This was me for a long time - but then I started using ephemeral (EC2) hosts for remote development, and while I wasn't setting up a new machine frequently, knowing that I could do it with <5min of effort (and 15min of building Nix packages) eliminated a lot of anxiety.