| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes three changes:
- Enable 'git diff o/m<TAB>' to complete to 'origin/master..' with the
".." being autoremovable.
This is implemented by the first hunk. That hunk is a functional
subset of Oliver's users/20705, however, the latter hasn't been
committed.
- Make typing "^" remove the "..", in light of the syntax "foo^..bar".
- Make typing "." _not_ remove the ".." but simply append it, since
"foo...bar" is a valid and useful syntax.
|
|
|
|
|
|
|
| |
f/b<TAB>' → 'foo/bar.txt's
This patch makes 'git log S/e<TAB>' expand to Src/exec.c. The incumbent
code would run 'git ls-tree S/' and find no matches.
|
| |
|
| |
|
| |
|
|
|
|
| |
As done for _git-cherry-pick in a428c6b62cb2 (36328 + 36340).
|
|
|
|
|
| |
Mechanism for forcing completion system into verbose mode is subject
to change.
|
| |
|
|
|
|
|
|
| |
Before this patch, 'git push $remote :<TAB>' completed branch names (as though
by `git branch -a`), instead of completing remote branch names sans the
${remote}/ prefix.
|
|
|
|
| |
For example, 'git push remote HEAD:foo/bar' creates such branches.
|
|
|
|
| |
include 'git branch <TAB>' and 'git tag <TAB>'.
|
|
|
|
| |
Suggested-by: Oliver Kiddle (users/20705)
|
|
|
|
|
|
| |
The uniquifiers 'HEAD~$n' were incorrect when a recent commit was the second
parent of a merge commit. Detect that case and print something correct
instead.
|
|
|
|
|
|
|
|
| |
Offer the "this alternative is still valid, but I don't know to offer
completions for it" for hash completion but not for recent object completion;
the former is protected by a _guard and the latter incorrectly appeared also in
cases such as 'git log a/b<TAB>' which were not the start of a gitrevisions(7)
expression.
|
|
|
|
|
|
|
| |
The "$@" argument to compadd is removed because (I think) it contains a -J,
which conflicts with the -V.
Joint with Daniel Hahler.
|
|
|
|
| |
Take account of backslash quoting.
|
| |
|
| |
|
| |
|
|
|
|
| |
This broke 'git cat-file blob origin:Etc/<TAB>'.
|
| |
|
| |
|
| |
|
|
|
|
| |
e.g., git log origin/master origin/foo origin/bar
|
| |
|
| |
|
|
|
|
| |
__git_is_committish_range
|
| |
|
|
|
|
|
|
|
| |
Add = to git checkout --conflict= completion
fix transposed [-
git push remote argument is not optional
can use shorter syntax for a check
|
| |
|
|
|
|
|
|
| |
It is defined at the beginning of the function already, and results in
the output of `expl=''` when completing after `git config
branch.local.pushremote ` etc.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This makes `branch_arg` empty by default, to be used only for
__git_remote_branch_names.
`branches::__git_revisions` was used here, but that's the same as
tree_ish_arg='tree-ishs::__git_tree_ishs' - both call __git_commits.
Only tree_ish_arg will call __git-commits now.
|
|
|
|
|
| |
Especially during a git rebase, you would use `git commit -m foo
--amend`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without this, `ret` will be set to 1 with `git diff --ex<tab>` and
result in duplicate entries:
% git diff --ex<tab>
-- option --
--exit-code -- report exit code 1 if differences, 0 otherwise
--exit-code -- report exit code 1 if differences, 0 otherwise
--ext-diff -- allow external diff helper to be executed
--ext-diff -- allow external diff helper to be executed
--no-ext-diff -- disallow external diff helper to be executed
-- recent commit object name --
|
| |
|
| |
|
|
|
|
|
| |
This adds `__git_commit_objects_prefer_recent` as alternative for
git-send-email's completion.
|
|
|
|
|
|
|
|
| |
With using `_guard` there like it's been done, the completion could not
be selected, probably because of the call to `_message` therein.
This changes it to use only the logic/check from `_guard` that we want
here.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove "-2" for _describe in __git_recent_commits.
This fixes the duplicate entries issue, because __git_recent_commits
gets called twice for _git-checkout (for __git_revisions and
__git_tree_ishs):
1. __git_commit_objects_prefer_recent _alternative __git_commits
__git_revisions _alternative _git-checkout
2. __git_commit_objects_prefer_recent _alternative __git_commits
__git_tree_ishs _alternative _git-checkout
|
|
|
|
| |
This fixes 1e7bb4a: newlines need to be kept (from the "%d" part).
|
|
|
|
|
|
|
| |
$pipestatus for `: foo` is 0 always.
Without this, "git checkout" in a non-git directory would complete " ",
but not result in a note/error about not being in a git dir.
|
|
|
|
|
|
|
| |
Allows 'git checkout o/m<TAB>' to complete 'origin/master'.
Moreover, '/x<TAB>' would complete 'foo/bar/xyzzy/baz', since the matchspec
uses not '*' but '**'.
|
|
|
|
|
|
|
|
| |
This adds the "HEAD~15" gitrevisions(7) identifier of the commit to the
description, which also uniquifies, isn't redundant, and may be easier
to type.
Ref: zsh-workers/34820 (http://www.zsh.org/mla/workers/2015/msg00744.html)
|
|
|
|
| |
This helps to distinguish it from __git_commit_objects.
|
| |
|
|
|
|
|
|
|
|
| |
Also, `--all` and `--reflog` is used to get all commits.
It adds the _guard in front, so only non-empty values will come here.
Also, __git_commit_objects_prefer_recent will only call it, if there are
no matching recent commits.
|
|
|
|
|
| |
This is used with __git_commits then, and is meant to only call
__git_recent_commits, if there are matches.
|