<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/contrib/completion/git-completion.bash, branch v2.1.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.1.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.1.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2014-07-30T21:21:14Z</updated>
<entry>
<title>Merge branch 'jk/more-push-completion'</title>
<updated>2014-07-30T21:21:14Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-07-30T21:21:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0d9cb2d14e4f26c122ab2532b4ceb3e757fb87b7'/>
<id>urn:sha1:0d9cb2d14e4f26c122ab2532b4ceb3e757fb87b7</id>
<content type='text'>
* jk/more-push-completion:
  completion: complete `git push --force-with-lease=`
  completion: add some missing options to `git push`
  completion: complete "unstuck" `git push --recurse-submodules`
</content>
</entry>
<entry>
<title>completion: complete `git push --force-with-lease=`</title>
<updated>2014-07-22T20:30:30Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2014-07-22T18:24:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=aaf7253f84477d4be9b56072804e53c3098aaa90'/>
<id>urn:sha1:aaf7253f84477d4be9b56072804e53c3098aaa90</id>
<content type='text'>
Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>completion: add some missing options to `git push`</title>
<updated>2014-07-22T20:23:39Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2014-07-22T18:24:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9e8a6a9433d2e750779a90663e2e9dca8a8c5c71'/>
<id>urn:sha1:9e8a6a9433d2e750779a90663e2e9dca8a8c5c71</id>
<content type='text'>
Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>completion: complete "unstuck" `git push --recurse-submodules`</title>
<updated>2014-07-22T20:21:07Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2014-07-22T18:24:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3a224ff2bbb8a3782d6db67426aa8bc09063ab08'/>
<id>urn:sha1:3a224ff2bbb8a3782d6db67426aa8bc09063ab08</id>
<content type='text'>
Since the argument to `--recurse-submodules` is mandatory, it does not
need to be stuck to the option with `=`.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'sp/complete-ext-alias'</title>
<updated>2014-06-25T19:23:27Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-06-25T19:23:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=af6ba0eb9e7d39df135e818fc98629dec473306c'/>
<id>urn:sha1:af6ba0eb9e7d39df135e818fc98629dec473306c</id>
<content type='text'>
* sp/complete-ext-alias:
  completion: handle '!f() { ... }; f' and "!sh -c '...' -" aliases
</content>
</entry>
<entry>
<title>completion: handle '!f() { ... }; f' and "!sh -c '...' -" aliases</title>
<updated>2014-06-13T20:37:43Z</updated>
<author>
<name>Steffen Prohaska</name>
<email>prohaska@zib.de</email>
</author>
<published>2014-06-12T18:49:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=56f24e80f0af4dd3591c8f143183b59cf9a34620'/>
<id>urn:sha1:56f24e80f0af4dd3591c8f143183b59cf9a34620</id>
<content type='text'>
'!f() { ... }; f' and "!sh -c '....' -" are recommended patterns for
declaring more complex aliases (see git wiki [1]).  This commit teaches
the completion to handle them.

When determining which completion to use for an alias, an opening brace
or single quote is now skipped, and the search for a git command is
continued.  For example, the aliases '!f() { git commit ... }' or "!sh
-c 'git commit ...'" now trigger commit completion.  Previously, the
search stopped on the opening brace or quote, and the completion tried
it to determine how to complete, which obviously was useless.

The null command ':' is now skipped, so that it can be used as
a workaround to declare the desired completion style.

For example, the aliases

    !f() { : git commit ; if ... } f
    !sh -c ': git commit; if ...' -

now trigger commit completion.

Shell function declarations now work with or without space before
the parens, i.e. '!f() ...' and '!f () ...' both work.

[1] https://git.wiki.kernel.org/index.php/Aliases

Signed-off-by: Steffen Prohaska &lt;prohaska@zib.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>completion: add missing options for git-merge</title>
<updated>2014-05-27T19:27:50Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2014-05-22T13:58:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8fee8726470bd63db6c396ea6208ea487eaa8fab'/>
<id>urn:sha1:8fee8726470bd63db6c396ea6208ea487eaa8fab</id>
<content type='text'>
The options added to __git_merge_options are those that git-pull passes
to git-merge, since that variable is used by both commands.

Those added directly in _git_merge() are specific to git-merge and
are not passed thru from git-pull.

Reported-by: Haralan Dobrev &lt;hkdobrev@gmail.com&gt;
Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>completion: add a note that merge options are shared</title>
<updated>2014-05-27T19:27:36Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2014-05-22T13:58:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6d2b06f02b9c69351a55a2cad0cfab33ecb6ee6f'/>
<id>urn:sha1:6d2b06f02b9c69351a55a2cad0cfab33ecb6ee6f</id>
<content type='text'>
This should avoid future confusion after a subsequent patch has added
some options to __git_merge_options and some directly in _git_merge().

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>completion: fix completing args of aliased "push", "fetch", etc.</title>
<updated>2014-04-09T21:22:18Z</updated>
<author>
<name>Felipe Contreras</name>
<email>felipe.contreras@gmail.com</email>
</author>
<published>2014-04-09T18:50:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=880111c11befaaf070e8ea1021bf11b4fb58c461'/>
<id>urn:sha1:880111c11befaaf070e8ea1021bf11b4fb58c461</id>
<content type='text'>
Some commands need the first word to determine the actual action that is
being executed, however, the command is wrong when we use an alias, for
example 'alias.p=push', if we try to complete 'git p origin ', the
result would be wrong because __git_complete_remote_or_refspec() doesn't
know where it came from.

So let's override words[1], so the alias 'p' is override by the actual
command, 'push'.

Reported-by: Aymeric Beaumet &lt;aymeric.beaumet@gmail.com&gt;
Signed-off-by: Felipe Contreras &lt;felipe.contreras@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ss/completion-rec-sub-fetch-push'</title>
<updated>2014-03-14T21:24:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-03-14T21:24:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=baf9e83c2105527a75c2838d63e290ec87712ca6'/>
<id>urn:sha1:baf9e83c2105527a75c2838d63e290ec87712ca6</id>
<content type='text'>
* ss/completion-rec-sub-fetch-push:
  completion: teach --recurse-submodules to fetch, pull and push
</content>
</entry>
</feed>
