A Chinese coast guard ship has rammed a Philippine fishing vessel and fired on it with a water cannon to prevent a resupply mission in the South China Sea.