Re: [PATCH] git.el: Only show completions from refs/heads, refs/remotes and refs/tags
From: David Kågedal <hidden>
Date: 2016-06-15 22:46:16
David Kågedal [off-list ref] writes:
quoted hunk
Otherwise it will pick up e.g. lots of irrelevant stuff from refs/bisect, refs/stash or refs/patches (for StGit users). Signed-off-by: David Kågedal <redacted> --- contrib/emacs/git.el | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)diff --git a/contrib/emacs/git.el b/contrib/emacs/git.el index feb229c..125e684 100644 --- a/contrib/emacs/git.el +++ b/contrib/emacs/git.el@@ -1388,7 +1388,10 @@ With a prefix arg, diff the marked files instead." (defun git-read-commit-name (prompt &optional default) "Ask for a commit name, with completion for local branch, remote branch and tag." (completing-read prompt - (list* "HEAD" "ORIG_HEAD" "FETCH_HEAD" (mapcar #'car (git-for-each-ref))) + (list* "HEAD" "ORIG_HEAD" "FETCH_HEAD"
Sorry, I didn't check this properly. I thought I was fixing inside the git-checkout function, but this is git-read-commit-name which is used in more than one place. But for git-checkout, I would like to see a much shorter list of named commits, namely those that can be called "branches". I'll come up with a better patch.
+ (mapcar #'car (git-for-each-ref "refs/heads" + "refs/remotes" + "refs/tags"))) nil nil nil nil default)) (defun git-checkout (branch &optional merge)
-- David Kågedal