Commit 2ddf440d authored by Dan Nicolaescu's avatar Dan Nicolaescu
Browse files

(vc-git-stash, vc-git-stash-show): New functions.

(vc-git-extra-menu-map): Bind them.
parent b91f0762
2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
* vc-git.el (vc-git-register): Use "git add" for directories.
(vc-git-stash, vc-git-stash-show): New functions.
(vc-git-extra-menu-map): Bind them.
* vc-dir.el (vc-dir-node-directory, vc-dir-update): Get the parent
directory correctly in case the item is a directory itself.
......
......@@ -662,6 +662,12 @@ or BRANCH^ (where \"^\" can be repeated)."
(define-key map [git-grep]
'(menu-item "Git grep..." vc-git-grep
:help "Run the `git grep' command"))
(define-key map [git-st]
'(menu-item "Stash..." vc-git-stash
:help "Stash away changes"))
(define-key map [git-ss]
'(menu-item "Show Stash..." vc-git-stash-show
:help "Show stash contents"))
(define-key map [git-sig]
'(menu-item "Add Signed-off-by on commit" vc-git-toggle-signoff
:help "Add Add Signed-off-by when commiting (i.e. add the -s flag)"
......@@ -730,6 +736,24 @@ This command shares argument histories with \\[rgrep] and \\[grep]."
(if (eq next-error-last-buffer (current-buffer))
(setq default-directory dir))))))
(defun vc-git-stash (name)
"Create a stash."
(interactive "sStash name: ")
(let ((root (vc-git-root default-directory)))
(when root
(vc-git--call nil "stash" "save" name)
(vc-resynch-buffer root t t))))
(defun vc-git-stash-show (name)
"Show the contents of stash NAME."
(interactive "sStash name: ")
(vc-setup-buffer "*vc-git-stash*")
(vc-git-command "*vc-git-stash*" 'async nil "stash" "show" "-p" name)
(set-buffer "*vc-git-stash*")
(diff-mode)
(setq buffer-read-only t)
(pop-to-buffer (current-buffer)))
(defun vc-git-stash-list ()
(replace-regexp-in-string
"\n" "\n "
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment