В России живут русские, в Италии - итальянцы, а жителей Германии мы называем немцами.
С точки зрения немецкого языка, противоречий нет: страна - Deutschland, а население - Deutsche. А вот в русском всё непросто.
"Немец" - это русское слово, и изначально оно никак не было связано с жителями Германии. Так называли всех иностранцев, кто не мог говорить по-русски.
Второе предположение - происхождение этого слова восходит к племенам Неметов, также живших на территории Германии, а некоторые утверждают, что к реке Неман.
Относительно названия государства: слово "Германия" имеет латинские корни. Так в Древнем Риме называли страну, расположенную к северу от самой Римской империи.
Как же правильно?
Словом "германец" назывались древние племена, обитавшие в Центральной, Западной и Юго-Западной Европе. Как синоним к "немцам" оно не может использоваться из-за стилистических рамок. Всё-таки, "германцы" на сегодня устарело.
В современном русском языке для обозначения народа, живущего в Германии, правильно употреблять слово "немцы".
Что касается прилагательного, то здесь возможны два варианта: немецкий и германский. Всё, что связано с национальностью - немецкое, а если речь идет о государстве - германское.