^ M aparece en git diff, pero no en editor vi

Copié el fragment de código del bloc de notas de Windows y lo pegué en el file del server. No muestra ningún caracter ^ M en el editor vi, pero cuando hago git diff, muestra el carácter ^ M en los lugares donde se pegan los cambios

Traté de arreglarlo

  1. Al search el patrón ^ M en el file del server pero no se puede encontrar ese patrón usando :%s/^M//g en el editor vi
  2. También probé el command dos2unix pero convierte el file completo, por lo tanto, no es útil mientras se usa gitdiff, ya que muestra todo el file

^M es el carácter CR utilizado (junto con LF) para codificar las líneas finales en Windows. Para mostrarlo en el tipo de Vim:

 :e ++ff=unix 

Luego puede continuar eliminando esos caracteres.

También puede searchlos en Vim con \r o eliminarlos con :%s/\r//g