MIAMI -- Ricky Nolasco allowed one run in eight innings and the Florida Marlins snapped a seven-game losing streak Friday night by beating the San Francisco Giants 2-1.