Yo daría un paso a la vez. Primero source tree luego linea de comandos. Pero no pierdes nada con intentarlo.
Luego de agregar el remote y hacer el fetch de fecchinm veo esto en sourcetree:
Como vez hay 3 branchs (ramas) master. El que dice origin es la copia de master que tienes en github, el que dice solo master es tu copia local, luego esta fecchinm/master, el cual contiene el commit que te interesa.
Bien, lo que yo haría es crear un nuevo branch, para no tocar el master. Llamada test_FixArduino, este branch contendrá todos los cambios de tu master local ya que estara basada en ella. Luego de crear el branch debes hacer un checkout para pasar a la nueva branch. en sourcetree es automatico.
Luego, estando en el branch test_FixArduino hago click derecho en facchinm/master y elijo merge para tomar sus cambios y aplicarlos a mi nueva branch:
Con esto ya tenes los cambios de facchin en tu copia local. si vas al explorador de windows veras los archivos atualizados. Si por algun motivo haces un checkout a master, volveras al codigo original del fork.
Yo te recomiendo trabajar asñi, con un branch separado, nunca hagas cambios directos en master si es que quieres trabajar en colaborativo. Al master solo lo toca el dueño del proyecto.
Cualquier duda estoy acá una hora màs.
Saludos!