Git commit traversal in log/rev-list/etc. may not eliminate some commits it should when commit dates are not monotonically increasing. Forcing topological ordering works around the problem. Differential Revision: https://phabricator.services.mozilla.com/D237990