We recommend that you check the current visa regulations on the website of the Federal Foreign Office.
EU nationals do not require a visa to enter the Federal Republic of Germany.
Generally speaking, all other foreigners require a visa for stays in Germany. A visa is not required for visits of up to 90 days in an 180‑day period for nationals of those countries for which the European Community has abolished the visa requirement.
You will find an overview on visa requirements here:
(c) Stefan Siegmund, TU Dresden, Faculty of Mathematics, firstname.lastname@example.org. All rights reserved.