We conduct a comprehensive study of ﬁle-system code evolution. By analyzing eight years of Linux ﬁle-system changes across 5079 patches, we derive numerous new (and sometimes surprising) insights into the ﬁle-system development process; our results should be useful for both the development of ﬁle systems themselves as well as the improvement of bug-ﬁnding tools.