need bareword::filehandles, indirect, and multidimensional for testing git checkout