class Git::Lib
def revparse(string)
def revparse(string) return string if string =~ /[A-Fa-f0-9]{40}/ # passing in a sha - just no-op it rev = ['head', 'remotes', 'tags'].map do |d| File.join(@git_dir, 'refs', d, string) end.find do |path| File.file?(path) end return File.read(rev).chomp if rev command('rev-parse', string) end