German police shoot knifeman who attacked far-right rally