4

gitブランチを更新するbashスクリプトを作成していますが、すべて正常に機能しますが、コミットメッセージをパラメーターとして指定するオプションを追加したいと思います。

私は最初にこのコマンドを使用しました:

echo "Executing git commit..."
git commit -m "$1"

しかし、私がこのようなものを送ったとき:

$ git.sh "testing commit message"

コマンドがgitで認識できないというエラーがたくさん表示されます。

この場合、追加した二重引用符はパラメーターを単一の文字列としてではなく、同じ数だけ渡すと思います。そのため、最初の引用符のみが-mオプションによって取得され、gitは他のパラメーターをコミットオプションとして渡そうとします。

スクリプト引数から取得するときにgitcommitメッセージとしてマルチワード文字列を渡すことができるより良い方法はありますか?

何か提案をいただければ幸いです。

4

2 に答える 2

4

コマンドがシェルによって評価されると、引用符は削除されます。

次のようなものを使用します

git commit -m "'$1'"
于 2012-11-08T05:45:37.247 に答える
1

これは私のために働きます:

git commit -m "$(echo $@)"
于 2020-03-09T12:54:55.277 に答える