I'll use London as an example, as that's the city I know best - but it's entirely possible that there are street-name histories which predate that in other cities around the world.
The earliest formal street names were Roman - the Antonine Itinerary was essentially a 2nd century 'road atlas' of much of the Roman Empire, including Britain - but the routes were described and named in purely functional ways, i.e. 'the route from London to X'. However, 'Roman roads' like Watling Street actually derive their name from later, Anglo-Saxon references.
By the early medieval period, most London street names had more or less acquired the form by which we know them today (that is to say, the streets of the original City, which is the area between St Paul's Cathedral and the Tower of London). These tended to reflect the activities which took place on that street so, for example, many of the streets around the Cathedral have religious names: Paternoster Row, Godliman Street, Sermon Lane, Creed Lane, Amen Corner. Others derive their names from the goods sold there - Vine Street, Pudding Lane, Bread Street. Yet others reference the people who lived there: Old Jewry, for example, or Lombard Street, named for the goldsmiths from the Lombardy region of Italy who settled there in the 14th century. Basically, these names were functional and literal.
The shift away from functional names began in the 17th century and gathered pace in the 18th. This was the period of aristocratic development as the geography of London shifted westwards. Landed aristocrats and gentry realised that there was money to be made in building estates of expensive housing, usually centred around squares. Areas like Bloomsbury, Mayfair and (later) Camden Town fit this description. The street and square names are derived from the various titles, country estates and allied families of the developer responsible for the buildings. So, for example, Bloomsbury is centred around Russell Square because it was developed by the Russell family, who were the Dukes of Bedford. Hence there is also a Bedford Square nearby, and a Woburn Square, named for their estate at Woburn Abbey. This pattern is repeated all over London.
Incidentally, its in the 18th century that we see the first house numbers in London. Previously, buildings were known by signs, of the kind still hanging outside pubs today - so you might visit a tailor 'at the sign of the Hand and Shears' on such-and-such a street, or consult an apothecary based 'opposite the sign of the Three Lambs' or something of that sort. Numbering was introduced in the 1760s to remove ambiguity as the city got larger and more complex.
By the 19th century, London was sprawling outwards in all directions, with villages like Clapham, Peckham, Hampstead and Stratford being swallowed up by suburban development. Street names in this period were still named after their builders in some cases (although less socially elevated by this point); or developments would be named after themes - e.g. a row of streets in Brixton named after poets: Shakespeare Road, Chaucer Road, Milton Road. The idea was to be aspirational and thus appealing to the middle-classes at whom these areas were aimed.
It's not till the 1920s-30s and the development of 'Metroland' (suburbs which became feasible because they were connected to the Underground/Tube, or 'metro'), that you start getting generic 'natural' street names like Acacia Avenue, Park View, Oak Lane etc. The idea being that they reflected the previously-rural areas on which these developments were built.
That's a slightly broader answer than the one you requested, but I hope it helps!