diff --git a/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php b/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php --- a/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php +++ b/src/applications/repository/worker/commitmessageparser/PhabricatorRepositoryCommitMessageParserWorker.php @@ -80,18 +80,22 @@ ->save(); } - $committer_identity = id(new PhabricatorRepositoryIdentityQuery()) - ->setViewer(PhabricatorUser::getOmnipotentUser()) - ->withIdentityNames(array($committer)) - ->executeOne(); - - if (!$committer_identity) { - $committer_identity = id(new PhabricatorRepositoryIdentity()) - ->setAuthorPHID($commit->getPHID()) - ->setIdentityName($committer) - ->setAutomaticGuessedUserPHID( - $this->resolveUserPHID($commit, $committer)) - ->save(); + $committer_identity = null; + + if ($committer) { + $committer_identity = id(new PhabricatorRepositoryIdentityQuery()) + ->setViewer(PhabricatorUser::getOmnipotentUser()) + ->withIdentityNames(array($committer)) + ->executeOne(); + + if (!$committer_identity) { + $committer_identity = id(new PhabricatorRepositoryIdentity()) + ->setAuthorPHID($commit->getPHID()) + ->setIdentityName($committer) + ->setAutomaticGuessedUserPHID( + $this->resolveUserPHID($commit, $committer)) + ->save(); + } } $data = id(new PhabricatorRepositoryCommitData())->loadOneWhere( @@ -128,6 +132,8 @@ $this->resolveUserPHID($commit, $committer)); $data->setCommitDetail( 'committerIdentityPHID', $committer_identity->getPHID()); + + $commit->setCommitterIdentityPHID($committer_identity->getPHID()); } $repository = $this->repository; @@ -166,7 +172,6 @@ } $commit->setAuthorIdentityPHID($author_identity->getPHID()); - $commit->setCommitterIdentityPHID($committer_identity->getPHID()); $commit->setSummary($data->getSummary()); $commit->save();