I've read on wiki that all the monarchs dating back from George I came from same house ( House of Hanover) which was German royal family (right?). Therefore it makes me wonder what language they were using? Since they were German kings then why didnt they impose German language on UK?
George I is asked by Parliament to take the throne because he is the grandson of Elizabeth Stuart, and great-grandson of James I. More importantly, he's also a Protestant. At this time, the early 1700s, there wasn't yet a German royal family, by the simple fact that Germany wouldn't become a country until 1871 under the auspices of Wilhelm I of Prussia. George is the elector count of Hannover, or technically the Electorate of Brunswick-Lüneburg, a semi-autonomous province of what was then the Holy Roman Empire. Hannover had, in fact, only been an electorate since 1692.
George is invited to take the British throne at a moment of political instability, as the House of Stuart had left no immediate heirs. When George arrives in England, he speaks very little English, and is not immediately popular. Parliament also makes the terms of his coronation contingent on the political separation of Britain and Hannover. It's important to remember that in this context, George and his family are just one small group of Germans. This is neither a political union of states, nor is it the type of complete invasion of 1066 or mass migration of the 6th century. Following the civil war and then the Glorious Revolution of 1688, Parliament was emerging more and more as the ruler of Britain. Teaching the entire country to speak German for the benefit of an increasingly ceremonial monarchy would have been not only politically incredibly unpopular, but also unfeasible.