【发布时间】:2017-12-13 17:58:23
【问题描述】:
我在我的 bash 配置文件中添加了一个函数:
function git-checkout-origin { git checkout -B $1 origin/$1; }
export -f git-checkout-origin
该函数工作正常,但有时在运行一些在 shell 中执行命令的命令时,我会收到此错误:
sh: error importing function definition for `git-checkout-origin'
我不太确定是什么原因造成的,尽管 sh 和 bash 似乎对函数使用了不同的语法,或者该函数与 sh 不兼容。
我不需要子shell中的函数,虽然损坏的函数也没有真正破坏东西,但我想摆脱错误。
【问题讨论】:
-
顺便说一句,如果您将此代码放入 shellcheck.net 并带有 #!/bin/sh shebang,它将指出您的答案中确定的两个问题。