doomemacs/lisp/lib/git.el
Henrik Lissner d92a81bf2d
feat(lib): add lib/git
Where future git wrappers will live.
2022-08-07 19:43:28 +02:00

11 lines
429 B
EmacsLisp

;;; lisp/lib/git.el -*- lexical-binding: t; -*-
;;;###autoload
(defun doom-git-toplevel (&rest segments)
"Return the path to the current repo's root."
(cl-destructuring-bind (code . output)
(doom-call-process "git" "rev-parse" "--show-toplevel")
(if (zerop code)
(apply #'file-name-concat output segments)
;; TODO throw stderr as error
(user-error "Not in a git repo: %s" default-directory))))