Git rebase псевдоним оболочки ZSH - PullRequest
0 голосов
/ 06 мая 2018

Я взял псевдоним git онлайн , который должен быть командой git rebase -i HEAD~$1, где $1 - число, переданное псевдониму. Вот псевдоним git, который я установил в моем .zshrc файле:

alias grn="! sh -c \"git rebase -i HEAD~$1\" -"

Пример использования с терминала:

$ grn 3 // This should translate to git rebase -i HEAD~3

Проблема, с которой я сталкиваюсь, заключается в том, что переданный целочисленный аргумент (например, 3) не передается моему псевдониму, поэтому псевдоним git фактически всегда выполняется git rebase -i HEAD~.

Есть какие-нибудь подсказки, как исправить этот псевдоним?

Ответы [ 2 ]

0 голосов
/ 06 мая 2018

Псевдоним оболочки с параметрами невозможен, но git alias определенно возможен. Или

git config alias.grn '! sh -c "git rebase -i HEAD~$1" -'

или

git config alias.grn '!f() { git rebase -i HEAD~$1; }; f'

Запуск от имени git grn 3.

0 голосов
/ 06 мая 2018

Ссылаясь на этот вопрос Я бы сказал, что alias, который принимает параметры, невозможно.

Вы можете легко сделать это с помощью однострочной функции.

Просто положите:

grn() { git rebase -i HEAD~"$1"; } 

в .zshrc, и вы можете запустить его так же, как псевдоним.

...