diff options
| author | Jonas Bernoulli <jonas@bernoul.li> | 2019-03-04 20:34:42 +0100 |
|---|---|---|
| committer | Jonas Bernoulli <jonas@bernoul.li> | 2019-03-04 20:35:24 +0100 |
| commit | ffb1dc40f47d76e459a0f65c7ea7d0000dc20134 (patch) | |
| tree | 3c42ba03ebd315b047a81ca19f0eb4b853f1caaa /lisp/magit-gitignore.el | |
| parent | b86e556c01670c620fa3d2c8fad823e4424fe46c (diff) | |
magit-{,no-}skip-worktree: New commands
Closes #3710.
Diffstat (limited to 'lisp/magit-gitignore.el')
| -rw-r--r-- | lisp/magit-gitignore.el | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/lisp/magit-gitignore.el b/lisp/magit-gitignore.el index 47492e7..8578ae4 100644 --- a/lisp/magit-gitignore.el +++ b/lisp/magit-gitignore.el @@ -32,7 +32,7 @@ (require 'magit) -;;; Commands +;;; Transient ;;;###autoload (autoload 'magit-gitignore "magit-gitignore" nil t) (define-transient-command magit-gitignore () @@ -49,7 +49,12 @@ :if (lambda () (magit-get "core.excludesfile")) :description (lambda () (format "privately for all repositories (%s)" - (magit-get "core.excludesfile"))))]) + (magit-get "core.excludesfile"))))] + ["Skip worktree" + (7 "w" "do skip worktree" magit-skip-worktree) + (7 "W" "do not skip worktree" magit-no-skip-worktree)]) + +;;; Gitignore Commands ;;;###autoload (defun magit-gitignore-in-topdir (rule) @@ -125,6 +130,26 @@ Rules that are defined in that file affect all local repositories." (magit-completing-read "File or pattern to ignore" choices nil nil nil nil default))) +;;; Skip Worktree Commands + +;;;###autoload +(defun magit-skip-worktree (file) + "Call \"git update-index --skip-worktree FILE\"." + (interactive (list (magit-read-file-choice "Skip worktree for: " + (cl-set-difference + (magit-list-files) + (magit-skip-worktree-files))))) + (magit-with-toplevel + (magit-run-git "update-index" "--skip-worktree" "--" file))) + +;;;###autoload +(defun magit-no-skip-worktree (file) + "Call \"git update-index --no-skip-worktree FILE\"." + (interactive (list (magit-read-file-choice "Do not skip worktree for: " + (magit-skip-worktree-files)))) + (magit-with-toplevel + (magit-run-git "update-index" "--no-skip-worktree" "--" file))) + ;;; _ (provide 'magit-gitignore) ;;; magit-gitignore.el ends here |
