Package Details: git-extras 6.1.0-1

Git Clone URL: (read-only, click to copy)
Package Base: git-extras
Description: GIT utilities -- repo summary, commit counting, repl, changelog population and more
Upstream URL:
Licenses: MIT
Submitter: Schnouki
Maintainer: eschwartz
Last Packager: eschwartz
Votes: 65
Popularity: 0.81
First Submitted: 2010-08-26 12:33
Last Updated: 2020-10-15 15:38

Dependencies (1)

Required by (0)

Sources (1)

Latest Comments

1 2 Next › Last »

eschwartz commented on 2020-10-15 19:34

Upstream added fish completions which are not installed, to go with existing zsh completions which are not installed.

There are many comments below about the zsh ones. The new fish ones seem to be in the same boat...

fish documentation claims you can only install vendor_completions.d/*.fish for the command being completed, no autoloading if the command is "git" not "git-extras".

So there is nowhere to install this. Unless you have a suggestion that does NOT require users to source it in their ~/.zshrc or ~/.config/fish/

liljaylj commented on 2020-10-15 18:45

upstream added zsh and fish completions

could you please add them to this package

numToStr commented on 2020-07-13 05:05

Please update to v6.

eschwartz commented on 2020-03-26 15:43

That's a pretty annoying trick. :/

Instead of a patch, I could set GIT_CONFIG=/dev/null make ... which would cause the Makefile to simply never find any aliases.

EDIT: done. No pkgrel update, if you managed to build it before (after maybe pressing "y") then you don't need to rebuild anyway, but this should make it more convenient in the future.

SpotlightKid commented on 2020-03-26 15:09

I always get this annoying prompt when building the package:

git-squash conflicts with an alias, still install it and disable the alias? [y/n]y

because I have an alias called squash in my git config.

IMHO the way the package is built should not depend on the user's configuration and certainly shouldn't it prompt unexpectedly for something interactively.

I suggest patching out lines 47-51 of the Makefile to remove this check.

eschwartz commented on 2020-02-07 20:02

The upstream Makefile doesn't deploy it either, because there's not exactly a defined place for such a thing. I'm not inventing some undocumented file location which no one knows about, myself, and I'm not going to spam users who don't care about zsh in order to tell them how to work around the failure to use zsh's completion system.

The well-documented completion systems exist for good reason, and the bash completions correctly integrate with it. If you need more, speak to upstream. Once the zsh ones work with the completion system, I'd be happy to install them to /usr/share/zsh/site-functions/.

lenormf commented on 2020-02-07 08:01

From t he upstream Makefile:

    @echo "If you are a zsh user, you may want to 'source $(CODE_DIR)etc/git-extras-completion.zsh'" \
        "and put this line into ~/.zshrc to enable zsh completion"

This package doesn't deploy etc/git-extras-completion.zsh, I want it to, so I can source it and have completion in ZSH.

eschwartz commented on 2020-02-07 05:16

The git-extras project does not provide a zsh-completion file. Such files are traditionally installed to /usr/share/zsh/site-functions/_foo, and are loaded on-demand as documented here:

Instead there is a file which is manually sourced by the user's zshrc, and is totally incompatible with the builtin completion system.

This will not get installed, because there is nowhere to install it to.

And having a .install file modify the user's $HOME/.zshrc is a bannable offense, so I would not do that since then, as a TU, I'd be obligated to ban myself. ;)

lenormf commented on 2020-02-05 08:22

Then make the PKGBUILD always install the ZSH completion?

WhyNotHugo commented on 2020-02-05 07:55

No, what you're proposing is simply not possible.

The PKGBUILD is executed to BUILD the package, but what you're trying to determine something on the machine where the package will be installed.

Building and installation can happen in different machines. While you can use the .install file to achieve something like this, keep in mind that, generally, packages always install zsh-completion. This also helps in case the installation order is the opposite (first this, then zsh).