Titleholders Germany beat world champions Australia 4-2 on Thursday to reach the men's Olympic hockey final with both teams giving their all in a high quality semi-final.