我最近開始使用一個/bin/sh --help
報告舊版本 bash 的系統。
$ /bin/sh --help
GNU bash, version 3.2.57(1)-release-(x86_64-apple-darwin18)
這會影響我的一些 bash 別名,因為我喜歡用破折號來定義它們。
$ grep coi ~/.gitconfig; git coi
coi = !"function foo-bar() { true; }; foo-bar"
function foo-bar() { true; }; foo-bar: `foo-bar': not a valid identifier
因此 bash-3 不處理函數名稱中的破折號。
如何告訴 git 運行不同的 shell,例如 /usr/local/bin/bash5 來執行複雜的別名?