Commit 6a5289df added support for aborting a merge operation, but did so
in a rather hacky way, not to mention it broke rebasing.

Rebasing was fixed in commit 33f9372b, but still, could've been cleaner.

Signed-off-by: Pieter Praet <[email protected]>
---
 magit-key-mode.el |  3 ++-
 magit.el          | 19 +++----------------
 2 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/magit-key-mode.el b/magit-key-mode.el
index 041763a..fb39086 100644
--- a/magit-key-mode.el
+++ b/magit-key-mode.el
@@ -150,7 +150,8 @@ (defvar magit-key-mode-groups
     (merging
      (man-page "git-merge")
      (actions
-      ("m" "Merge" magit-manual-merge))
+      ("m" "Merge" magit-manual-merge)
+      ("A" "Abort" magit-merge-abort))
      (switches
       ("-ff" "Fast-forward only" "--ff-only")
       ("-nf" "No fast-forward" "--no-ff")
diff --git a/magit.el b/magit.el
index bacd822..81ce60f 100644
--- a/magit.el
+++ b/magit.el
@@ -787,7 +787,7 @@ (defvar magit-mode-map
     (define-key map (kbd "SPC") 'magit-show-item-or-scroll-up)
     (define-key map (kbd "DEL") 'magit-show-item-or-scroll-down)
     (define-key map (kbd "C-w") 'magit-copy-item-as-kill)
-    (define-key map (kbd "R") 'magit-progress-step)
+    (define-key map (kbd "R") 'magit-rebase-step)
     (cond (magit-rigid-key-bindings
            (define-key map (kbd "m") 'magit-merge)
            (define-key map (kbd "b") 'magit-checkout)
@@ -1337,13 +1337,6 @@ (defun magit-everything-clean-p ()
   (and (not (magit-anything-staged-p))
        (eq (magit-git-exit-code "diff" "--quiet") 0)))
 
-(defun magit-rebase-in-progress-p ()
-  (or (file-exists-p (magit-git-dir "rebase-apply"))
-      (file-exists-p (magit-git-dir "rebase-merge"))))
-
-(defun magit-merge-in-progress-p ()
-  (file-exists-p (magit-git-dir "MERGE_HEAD")))
-
 (defun magit-commit-parents (commit)
   (cdr (split-string (magit-git-string "rev-list" "-1" "--parents" commit))))
 
@@ -4372,7 +4365,7 @@ (defun magit-refresh-status ()
            "Merging"
            (concat
             (mapconcat 'identity (mapcar 'magit-name-rev merge-heads) ", ")
-            "; Press \"R\" to abort")))
+            "; Resolve conflicts, or press \"m A\" to Abort")))
         (when rebase
           (magit-insert-status-line
            "Rebasing"
@@ -4496,12 +4489,6 @@ (defun magit-status (dir)
         (setq magit-previous-window-configuration winconf)
         (magit-mode-init topdir 'magit-status-mode #'magit-refresh-status)))))
 
-(defun magit-progress-step ()
-  (interactive)
-  (if (magit-merge-in-progress-p)
-      (magit-merge-abort)
-    (magit-rebase-step)))
-
 ;;;; Read Repository
 
 (defun magit-read-top-dir (dir)
@@ -4599,7 +4586,7 @@ (defun magit-merge (revision)
 (defun magit-merge-abort ()
   "Abort the current merge operation."
   (interactive)
-  (if (magit-merge-in-progress-p)
+  (if (file-exists-p (magit-git-dir "MERGE_HEAD"))
       (when (yes-or-no-p "Abort merge?")
         (magit-run-git-async "merge" "--abort"))
     (error "No merge in progress")))
-- 
1.7.11.1

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"magit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to