private function pushToHgRepository(PhabricatorRepository $repository, PhabricatorRepositoryURI $mirror_uri)
 {
     $argv = array('push --verbose --rev tip -- %P', $mirror_uri->getURIEnvelope());
     $future = $mirror_uri->newCommandEngine()->setArgv($argv)->newFuture();
     try {
         $future->setCWD($repository->getLocalPath())->resolvex();
     } catch (CommandException $ex) {
         if (preg_match('/no changes found/', $ex->getStdOut())) {
             // mercurial says nothing changed, but that's good
         } else {
             throw $ex;
         }
     }
 }