Пример #1
0
 protected function parseCommitMessage(ArcanistDiffChange $change)
 {
     $change->setType(ArcanistDiffChangeType::TYPE_MESSAGE);
     $message = array();
     $line = $this->getLine();
     if (preg_match('/^Merge: /', $line)) {
         $this->nextLine();
     }
     $line = $this->getLine();
     if (!preg_match('/^Author: /', $line)) {
         $this->didFailParse(pht("Expected 'Author:'."));
     }
     $line = $this->nextLine();
     if (!preg_match('/^Date: /', $line)) {
         $this->didFailParse(pht("Expected 'Date:'."));
     }
     while (($line = $this->nextLineTrimmed()) !== null) {
         if (strlen($line) && $line[0] != ' ') {
             break;
         }
         // Strip leading spaces from Git commit messages. Note that empty lines
         // are represented as just "\n"; don't touch those.
         $message[] = preg_replace('/^    /', '', $this->getLine());
     }
     $message = rtrim(implode('', $message), "\r\n");
     $change->setMetadata('message', $message);
 }
Пример #2
0
 protected function parseCommitMessage(ArcanistDiffChange $change)
 {
     $change->setType(ArcanistDiffChangeType::TYPE_MESSAGE);
     $message = array();
     $line = $this->getLine();
     if (preg_match('/^Merge: /', $line)) {
         $this->nextLine();
     }
     $line = $this->getLine();
     if (!preg_match('/^Author: /', $line)) {
         $this->didFailParse("Expected 'Author:'.");
     }
     $line = $this->nextLine();
     if (!preg_match('/^Date: /', $line)) {
         $this->didFailParse("Expected 'Date:'.");
     }
     while (($line = $this->nextLine()) !== null) {
         if (strlen($line) && $line[0] != ' ') {
             break;
         }
         // Strip leading spaces from Git commit messages.
         $message[] = substr($line, 4);
     }
     $message = rtrim(implode("\n", $message));
     $change->setMetadata('message', $message);
 }