A .gitattributes Parser That Validates Git Attribute Patterns, Set/Unset/Value/Unspecified Attribute States, Escaped Whitespace, Quoted Patterns, Comments, Invalid Attribute Names, Reserved Patterns, Duplicate Attributes, and Conflicting Attribute Assignments