0

当我编写这样的 shell 脚本时:

echo -n 'Enter description of new version: ';

read desc;

git commit -m $desc;

当我输入多字描述时,它只在 $desc 中输入一个字并给我错误:

Enter description of new version: hope it works
error: pathspec 'it' did not match any file(s) known to git.
error: pathspec 'works'' did not match any file(s) known to git.
fatal: too many params

有时它会给出:

Enter description of new version: final check
error: pathspec 'check'' did not match any file(s) known to git.
fatal: Failed to resolve 'check'' as a valid ref.
Everything up-to-date

我的脚本有什么问题?

请提出从命令行读取多词描述到变量 $desc 的原因和解决方案

我试过使用:

echo -n 'Enter description of new version: ';

read text;

desc="'"$text"'";

git commit -m $desc;

但是没有用。

先感谢您

4

1 回答 1

3

您需要引用:

git commit -m "$desc"

区别在于:

git commit -m hope it works

git commit -m "hope it works"

第一个尝试使用消息提交文件,it而后者使用消息提交索引。workshopehope it works

于 2013-06-04T13:14:53.610 回答