The average German uses 48000 kWh per year of primary energy (source). Commercial solar panels produce around 150 Watts per square meter peak. If we define a square meter year as peak output of one square meter of solar panels for one year (i.e. 150W * 365 days=1282kWh), that means you need about 35 square meter years of solar panels per person to get to net 0. Let’s say 15 square meter years because primary power consumption includes power plant inefficiencies and so on that you don’t have with direct electricity and also heating which can be done more efficiently with electric heat pumps.

Unfortunately you don’t get one square meter year per square meter per year in Germany (e.g. because the sun doesn’t shine at night). We can estimate the correction factor by looking at commercial installations.

42,339 MW of PV installations produced 39,401 GWh of energy in 2017 in Germany (source), so about 38 days of peak generation. That means the correction factor should be 9.6.

So you need at least 144sqm of solar panels per person, if you’re generous about energy savings and don’t overprovision to reduce storage demands. Germany has an average population density of 4300 square meters per person.

Germany currently (2019) uses around 2.4 million hectares for energy crops (source. Thats 287 square meters per person. Conveniently almost exactly twice the amount of space needed to cover the energy needs with solar panels, given the above assumptions, so there is room for space between the panels.

Update (2021): 200W per square meter panels are a thing now, so the land use calculated above can be reduced by 25%.