From 5d47682f3ba7e49fffd62a4c506fd9bcdb8ba138 Mon Sep 17 00:00:00 2001 From: vrana Date: Fri, 22 Feb 2013 09:52:00 -0800 Subject: [PATCH] Don't amend existing revision with `arc diff --create` Summary: If there's other revision in last commit message and I said `--create` then it is clear that I want to create a new commit. Test Plan: $ arc diff --create # in dirty working copy on top of my open revision Reviewers: epriestley Reviewed By: epriestley CC: aran, Korvin Differential Revision: https://secure.phabricator.com/D5078 --- src/workflow/ArcanistBaseWorkflow.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/workflow/ArcanistBaseWorkflow.php b/src/workflow/ArcanistBaseWorkflow.php index 421e2506..6cf14902 100644 --- a/src/workflow/ArcanistBaseWorkflow.php +++ b/src/workflow/ArcanistBaseWorkflow.php @@ -871,10 +871,11 @@ abstract class ArcanistBaseWorkflow extends Phobject { if (!$commits) { return false; } - $commit = reset($commits); + $commit = reset($commits); $message = ArcanistDifferentialCommitMessage::newFromRawCorpus( $commit['message']); + if ($message->getGitSVNBaseRevision()) { return false; } @@ -883,6 +884,10 @@ abstract class ArcanistBaseWorkflow extends Phobject { return false; } + if ($message->getRevisionID() && $this->getArgument('create')) { + return false; + } + // TODO: Check commits since tracking branch. If empty then return false. $repository = $this->loadProjectRepository();