Function: projectile-check-vcs-status

projectile-check-vcs-status is a byte-compiled function defined in projectile.el.

Signature

(projectile-check-vcs-status &optional PROJECT-PATH)

Documentation

Check the status of the current project.

If PROJECT-PATH is a project, check this one instead.

Source Code

;; Defined in ~/.emacs.d/elpa/projectile-20260310.858/projectile.el
;;; Dirty (modified) project check related functionality
(defun projectile-check-vcs-status (&optional project-path)
  "Check the status of the current project.
If PROJECT-PATH is a project, check this one instead."
  (let ((project-path (or project-path (projectile-acquire-root)))
        (project-status nil))
    (save-excursion
      (vc-dir project-path)
      ;; wait until vc-dir is done (with a 30s timeout to avoid freezing)
      (let ((deadline (time-add (current-time) 30)))
        (while (and (vc-dir-busy) (time-less-p (current-time) deadline))
          (sleep-for 0.1)))
      ;; check for status
      (save-excursion
        (save-match-data
          (dolist (check projectile-vcs-dirty-state)
            (goto-char (point-min))
            (when (search-forward check nil t)
              (setq project-status (cons check project-status))))))
      (kill-buffer)
      project-status)))