TL;DR: 'fetch chromium' now uses git unmanaged mode
In the Chrome Infrastructure team we’ve come to the conclusion that managed mode was actually a bad idea. It was supposed to be an easier workflow for people new to git, but it turned out to be full of surprising behaviors. The unmanaged mode is actually more consistent and predictable, and the document mentioned above has been updated to strongly recommend unmanaged mode.
The main difference is that with the managed mode local branches track local master branch instead of origin/master, and gclient “manages” the branches so that they stay in sync. In practice this leads to a situation where there are two master branches (local master and origin/master) that go out of sync and prevent further uploads/commits. With the unmanaged mode you always have only one master: origin/master. The local master still exists but is not treated in any special way by the tools.
The change I just made today is that the “fetch chromium” command will use the unmanaged mode. I also recommend everyone using managed mode to switch to unmanaged mode by editing the .gclient file and changing “managed”: True to “managed”: False.
Paweł