У меня есть
git () { [ $1 = commit ] && command git commit -v "${@:2}" || command git "$@"; }
Он делает git commit
его значением -v
по умолчанию, в противном случае передает параметры и выполняет команду git
.
Но кажется, что это можно было бы сократить?
Кстати, я уменьшаю свой .bashrc
файл. Пока что до 28 (в основном читаемых) строк.
решение1
Вот способ не повторять эту command git
часть:
git () {
if [ "$1" = commit ]; then set commit -v "${@:2}"; fi
command git "$@"
}
Обратите внимание, что не следует использовать $1
без двойных кавычек. Всегда используйте двойные кавычки вокруг подстановок переменных, если только вы не знаете, почему вам нужно их опустить.
Не используйте &&
и ||
как сокращения. Это мило и может сэкономить несколько символов, но экономия символов бессмысленна. Читабельность важна и if
более четко определяет цель кода.
Вместо этого вы можете определить псевдоним в своей конфигурации git (но таким образом вы не сможете скрыть существующую команду, вам нужно будет использовать другое имя), например, так ~/.gitconfig
:
[alias]
co = commit -v