multiple level hierarchy git ignore files