According to many texts, the reason why Gringard reagents cannot be used with alcohols is because the Gringard reagent is a strong base, which would deprotonate the alcohol. ($p\pu{K}_b$ of Gringard $\approx 50$).
However, carbonyls also have a fairly acidic hydrogen at the alpha position ($p\pu{K}_a$ of enol $\approx 20$), so why does the Gringard reaction react with the electrophilic carbon, rather than as an acid-base reaction with the alpha position to form an enolate?