Germany's Andre Greipel won a sprint finish as Mark Cavendish came home fourth following an earlier crash on stage six of the Tour de France.
Greipel beat points leader Peter Sagan of Slovakia and fellow German Marcel Kittel in the dash for the line.
Briton Cavendish, who won stage five, worked hard to catch the pack after crashing with 34km left of the race from Aix-en-Provence to Montpellier.
Daryl Impey becomes the first African rider to wear the yellow jersey.
The South African's 14th place finish on the stage was enough for him to grab the overall lead from Orica GreenEdge team-mate Simon Gerrans.
"This is a special day, a dream come true for me and the whole South African community," said Impey.
"Simon got in the jersey because he won stage three (although he did not take over as race leader until after Orica GreenEdge won the team time trial on stage four) but it's been in my reach and seeing him lead me out today shows what a great rider he is.
"He could easily have sat on the wheel and kept the yellow. I was the last man to lead out Matt Goss for the sprint and that left me in a good spot."
Cavendish won a sprint in Montpellier the last time the southern French city hosted a stage finish in 2011.
However, the Isle of Man rider was involved in a crash towards the end of the 176.5km stage and without a team-mate to help pace him back to the peloton, he was forced to weave in and out of the support cars and bunny-hop over a roundabout.
"I was coming into the roundabout," Cavendish said. "It was tight, my front wheel went and I ended up in the road. There was no other vehicle involved.
"It wasn't necessarily a factor in me losing the sprint but it did take a lot of energy to get back on. Andre's a great sprinter, I'm very disappointed."
Sagan also had to chase back to the peloton after stopping to change both his wheels with 46km remaining. The Cannondale rider was pulled along by Greipel's slipstream as he finished a bike length behind in second place.
Greipel, who also won his fourth intermediate sprint, collected a maximum 65 points in the battle for the green points jersey - 45 for the stage win and 20 for the intermediate sprint.
"I told the guys to wait as long as possible and everybody to stay together," said the German, who rides for Lotto Belisol.
"We hit the front with 2km to go and I think people can see we have some horsepower. I'm really proud of this team."
Sagan continues to lead the points classification on 159, with Greipel second on 130, while Cavendish is third on 119.
A nervous peloton had left Aix-en-Provence with local weather forecasts predicting that the Mistral wind, common in the south of France, would blow and the riders would have to cope with gusts of 60-70km/h.
An early solo breakaway attempt by Spaniard Luis Mate was brought back after 44km and the peloton rode together throughout the rest of the stage, although the wind did not prove to be too big a factor.
Pre-race favourite Chris Froome finished safely in the bunch, five seconds behind the stage winner, but alongside two-time winner Alberto Contador of Spain and Australia's 2011 champion Cadel Evans.
Team Sky leader Froome remains seventh overall, eight seconds off the lead but six clear of Contador and 23 ahead of Evans.
Froome's team-mate Edvald Boasson Hagen finished 12th on the stage to move up to second in the overall standings.
Astana team leader Janez Brajkovic was one of three riders to abandon the race on Thursday. Slovenian Brajkovic needed stitches in a knee injury after crashing while his Swedish team-mate Fredrik Kessiakoff and France's FDJ rider Nacer Bouhanni also pulled out of the Tour.
Belgium's Jurgen van den Broeck, who rides for stage winner Greipel's Lotto Belisol team and France's AG2R rider Maxime Bouet did not start stage six after sustaining injuries in a crash on Wednesday.
Stage six results:
1. Andre Greipel (Ger) Lotto 3:59:02"
2. Peter Sagan (Svk) Cannondale Same time
3. Marcel Kittel (Ger) Argos
4. Mark Cavendish (GB) Omega Pharma-Quick-Step
5. Juan Jose Lobato (Spa) Euskaltel
Overall classification after stage six:
1. Daryl Impey (SA) Orica 22:18:17"
2. Edvald Boasson Hagen (Nor) Team Sky +3"
3. Simon Gerrans (Aus) Orica +5"
4. Michael Albasini (Swi) Orica
5. Michal Kwiatkowski (Pol) Omega Pharma-Quick-Step +6"
7. Chris Froome (GB) Team Sky +8"
9. Nicolas Roche (Ire) Saxo-Tinkoff +14"
11. Alberto Contador (Spa) Saxo-Tinkoff +14"
16. Daniel Martin (Ire) Garmin +17"
22. Cadel Evans (Aus) BMC +31"
97. Peter Kennaugh (GB) Team Sky +14'36"
104. David Millar (GB) Garmin +15'43"
137. Mark Cavendish (GB) Omega Pharma-Quickstep +26'50"
167. Ian Stannard (GB) Team Sky +36'16"
186. Geraint Thomas (GB) Team Sky +43'03"
Green points jersey standing:
1. Peter Sagan (Svk) Cannondale 159
2. Andre Greipel (Ger) Lotto 130
3. Mark Cavendish (GB) Omega Pharma - Quickstep 119
4. Alexander Kristoff (Nor) Katusha 111
5. Marcel Kittel (Ger) Argos Shimano 87