From: Glenn Morris Date: Tue, 28 Aug 2012 19:26:41 +0000 (-0400) Subject: * admin/bzrmerge.el (bzrmerge-merges): Allow unversioned files in the tree. X-Git-Tag: emacs-24.2.90~483 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a3f90bea8edc75b7543a06170e5a7521163bbf4e;p=emacs.git * admin/bzrmerge.el (bzrmerge-merges): Allow unversioned files in the tree. --- diff --git a/admin/ChangeLog b/admin/ChangeLog index 1bbce2ea87a..145028ec815 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog @@ -1,3 +1,7 @@ +2012-08-28 Glenn Morris + + * bzrmerge.el (bzrmerge-merges): Allow unversioned files in the tree. + 2012-08-28 Andreas Schwab * charsets/mule-charsets.el (header): Fix typo. diff --git a/admin/bzrmerge.el b/admin/bzrmerge.el index e174312143d..8d64dd9edbf 100644 --- a/admin/bzrmerge.el +++ b/admin/bzrmerge.el @@ -45,16 +45,23 @@ The list returned is sorted by oldest-first." (erase-buffer) ;; We generally want to make sure we start with a clean tree, but we also ;; want to allow restarts (i.e. with some part of FROM already merged but - ;; not yet committed). + ;; not yet committed). Unversioned (unknown) files in the tree + ;; are also ok. (call-process "bzr" nil t nil "status" "-v") (goto-char (point-min)) (when (re-search-forward "^conflicts:\n" nil t) (error "You still have unresolved conflicts")) - (let ((merges ())) + (let ((merges ()) + found) (if (not (re-search-forward "^pending merges:\n" nil t)) (when (save-excursion (goto-char (point-min)) - (re-search-forward "^[a-z ]*:\n" nil t)) + (while (and + (re-search-forward "^\\([a-z ]*\\):\n" nil t) + (not + (setq found + (not (equal "unknown" (match-string 1))))))) + found) (error "You still have uncommitted changes")) ;; This is really stupid, but it seems there's no easy way to figure ;; out which revisions have been merged already. The only info I can