brancher: Fix a race in commitdone.

There was an issue in the commitdrain/commitdone mechanism where a rev
could be marked done before all Git commits for that rev were in. It
would manifest as errors in copyfrom, e.g.:

  isvn_lookup_copyfrom: No such rev (r<foo>) for `<branch>', or
  git_tree_entry_byname() didn't find. (Copyfrom ...)

This happened in the scenario where the last rv_secondary branch commits
before the non-rv_secondary branch; in this case commitdrain is zero /
done, so the commitdone code wouldn't block waiting for secondaries
and instead signal branchers they can copyfrom the rev. However, the
'main' revision had not yet committed, so anyone waiting for it would be
woken prematurely.

The solution is to only signal commitdone from the main branch, which
already correctly waits for all secondary branches.