"They entered Zawiyah at six in the morning with heavy forces, hundreds of soldiers with tanks. Our people fought back ... We have won for now and civilians are gathering in the square," said Youssef Shagan, the rebel force spokesman in Zawiyah.
"We captured 3 APCs, two tanks and one pick-up after an hour and a half of fighting. A lot of civilians fled when the fighting started," he said, adding that there were government snipers in the town.
Earlier reports said Gaddafi's forces had reasserted broad control of the Mediterranean coastal town, 50 km (30 miles) west of the capital Tripoli but had run into rebel resistance in a central square. A rebel fighter in central Zawiyah told Reuters by phone that Gaddafi's forces were re-grouping at the entrance of the town after being pushed back on Saturday morning.
"Gaddafi will never enter this city. He will never set foot here. The only way for him to enter the city is when we are all dead. He has to kill us all to control the city," said the rebel, who gave his name as Ibrahim.
He said there were casualties on both sides but could not give a precise number.