aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--org-maint.el15
1 files changed, 11 insertions, 4 deletions
diff --git a/org-maint.el b/org-maint.el
index 71b9d31..df80256 100644
--- a/org-maint.el
+++ b/org-maint.el
@@ -65,14 +65,21 @@ If APPLY is non-nil, use 'git apply' instead of 'git am'."
(defun org-maint-check-for-new ()
"Check for new commits in the Emacs repository to port.
+
Determine \"new\" commits by looking for commits that 1) touch
Org files, 2) are contained in the Emacs reference specified by
the Org \"ref\" property, and 3) are _not_ included in the
-revision returned by `org-maint-rev-from-next-item'."
+revision returned by `org-maint-rev-from-next-item'.
+
+If a reference is specified by the Org property \"exclude-ref\",
+don't consider commits contained in this reference new."
(interactive)
- (let ((revs (list (or (org-entry-get (point) "ref")
- (user-error "No reference found"))
- (concat "^" (org-maint-rev-from-next-item))))
+ (let ((revs (nconc
+ (list (or (org-entry-get (point) "ref")
+ (user-error "No reference found"))
+ (concat "^" (org-maint-rev-from-next-item)))
+ (and-let* ((ex-ref (org-entry-get (point) "exclude-ref")))
+ (list (concat "^" ex-ref)))))
(default-directory org-maint-emacs-dir))
(with-current-buffer (get-buffer-create "*org-maint-new-entries*")
(goto-char (point-min))