I made a program called "yorn", which basically does what you mention.
It keeps tracks of files by using git as the backend.
It's made to be more general than for note taking though.
I use it to keep track of my dreams or ideas or whatever
The program uses the concepts of minute, daily, monthly, yearly, or box yornals (basically just a file)
you can have as many yornals of course, delete or add them, etc.
you can filter yornal entries, from specific dates ranges, using expressions too if you want, or with regex or plain words
Here's the usage output from the flag -u, so you can see what I mean: http://0x0.st/HHRR.txt
The one downside is that yornal entries are not named, but they are just files with a number on them, because the yornals are structured to just be directories that contain directories and so on until its just a file, in which case it's the actual yornal entry (this is how I distinguish the type of the yornal)
Also I could make the documentation a little better, but I'm too lazy to bother
If you're interested in the program, here's the link: https://github.com/emanrdesu/code/blob/master/ruby/yorn
You'd have to chmod +x it and put it on your $PATH, and of course, have ruby installed in your system.