In order to keep the correct degrees of freedom (which are 2) for massless gauge fields one imposes,
$$p^\mu \epsilon_\mu = 0 \tag1$$
Together with the gauge redundacy/equivalence relation,
$$\epsilon_\mu \sim \epsilon'_\mu = \epsilon_\mu + F(p)p_\mu \tag2$$
Because $\epsilon$ and $\epsilon'$ satisfy Eq. (1).
Now, the amplitude of any process with 2 gauge fields in the final state, $\epsilon_\mu\epsilon_\nu M_{\mu\nu}$, has to be gauge invariant and due to Eq. (2), that implies
$$p^\mu·M_{\mu\nu} = 0 \tag3$$
Nevertheless, for non-abelian theories our massless gauge fields transform for small parameter $\omega = \omega(x)$ and $g$ the coupling constant as
$$A_\mu \rightarrow A_\mu + \partial_\mu\omega - ig[A_\mu, \omega] \tag4$$
From here you can say that the gauge redudancy for non-abelian fields should be:
$$\epsilon_\mu \sim \epsilon'_\mu = \epsilon_\mu + F(p)p_\mu + G(p)\epsilon_\mu \tag5$$
But now, from Eq. (5) you get that Eq. (2) is changed, in order to preserve gauge invariance, by
$$(p^\mu + \epsilon^\mu)M_{\mu\nu} = 0 \tag6$$
But in many book appears that in QCD we hold Eq. (2) which should imply null amplitude accordingly to Eq. (6). What am I misunderstanding?