`magit-delete-branch' runs "git branch -d <branch>", which refuses to delete branches that are not fully merged. Given that we don't care and don't want to be stalled, use "git branch -D <branch>" directly. --- This should address the problems removing un-merged branches. emacs/notmuch-dev.el | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/emacs/notmuch-dev.el b/emacs/notmuch-dev.el index ac427ec..871ce3b 100644 --- a/emacs/notmuch-dev.el +++ b/emacs/notmuch-dev.el @@ -64,7 +64,9 @@ (magit-checkout "master")) (defun notmuch-dev-delete-branch (name) - (magit-delete-branch name)) + ;; `magit-delete-branch' uses "-d", which is not sufficiently + ;; aggressive for us. + (magit-run-git "branch" "-D" name)) (defun notmuch-dev-create-branch (name) ;; Switches to the new branch automatically. -- 1.7.7.3