Я хочу создать псевдоним, состоящий из двух команд. Не удалось ничего найти в Интернете, так как большинство вопросов касаются псевдонима, который равен 2 командам, например:
alias command = "command1 && command2"
Что я хочу:
alias git push = "git add . && git commit -m 'auto ups' && git push"
Зачем использовать это вместо того, чтобы называть мой псевдоним gp (или любой другой псевдоним с 1 формулировкой)
Это возможно?
Не с псевдонимами оболочки, а с псевдонимами Git; хотя я считаю, что вы не можете перезаписать существующую команду Git.
Что такое git push? Звучит как название нового аттракциона или парка развлечений. Кстати, если вы хотите, чтобы команда безоговорочно запускала две команды подряд, это alias foo=command1;command2
. Ваш подход выполняет команду2, только если команда1 возвращает код выхода 0.
alias git push =
не работает, так как псевдоним не может содержать пробелы. Назовите его git_push
или git.push
.
@user1934428 user1934428 «Опыт git push» означает, что вам не нужно менять команду на что-то другое. Кроме того, вы правы для &&, но в этом контексте смысл состоит в том, чтобы просто запустить любую цепочку команд, которую вы хотите, с помощью команды псевдонима из двух слов.
Тогда вы можете добиться этого, конечно, с подходом, данным VonC в его ответе. Я определенно не хочу рекомендовать переопределять стандартную команду, потому что вы всегда должны помнить, что ваша версия команды ведет себя не так, как все ожидают. Это может укусить вас когда-нибудь ....
Я бы сказал, что вы дали себе совершенно другой «опыт»: стандартный «опыт» заключается в том, что вы добавляете, а затем фиксируете. В какой-то другой момент вы нажимаете. Вы не делаете все три сразу, и когда вы станете лучше в Git, вам не захочется делать все три сразу. Тем не менее, вы можете делать такие вещи, просто это сложнее, чем использовать псевдоним bash или Git.
Как показано здесь, вам нужно определить git
оболочку.
Он должен быть установлен в вашем $PATH
перед самим /usr/local/bin/git
.
Или вы можете сослаться на этот сценарий через alias git=git-wrapper
в своем ~/.bash_profile
.
В этой оболочке на push
вы можете вызвать скрипт, который будет связывать любую нужную вам команду git
.
см.:
PAGER='less +/^\ *aliases' man bash