Controllers are always changed by Editor

Why are Mecanim animator files (*.controller) always changed by Editor, even if no manual modification was made.
I have just run scene and quit Editor. It seems like all information saved in controller-file is same, but the order has changed. Every time I make a commit into GIT , I need to revert all controller to avoid merge-conflicts. Maybe SetDirty function is called somewhere inside animator? I found a call to Animator.EditorOnlySetDirty inside Animator.Update in profiler.

You should file bug reports with some test case project to Unity. I see two distince bugs here that both should be adressed:

  1. Saving the controller reorders members, effectively disabling any kind of version control support. IMHO, this is the most important issue.
  2. The controller is marked dirty even if nothing is changed.

These issues are fixed in Unity 4.2.