Subshel​​、変数git、bash - bach -cでsubshel​​パラメータを使用する方法

Subshel​​、変数git、bash - bach -cでsubshel​​パラメータを使用する方法

次のようにgerritからrevspecを抽出しようとしています。

git ls-remote | grep $(git name-rev --all | grep $(git branch --show-current) | awk '{print $1}') | awk '{print $2}'

返品:

refs/changes/86/2214286/16

これまではとても良いです(ただし、これより良い方法があるようですが、方法を知っているならコメントも残してください)。

一般的な目的は、このコマンドをgitconfigにエイリアスとして置くことでしたが、計画どおりに機能しませんでした。

[alias]
    c = "git ls-remote | grep (git name-rev --all | grep (git branch --show-current) | awk '{print $1}') | awk '{print $2}'"

これを出力して下さい:

 git c                                                                                                                                                                                                        
 expansion of alias 'c' failed; 'git' is not a git command

「bash -c」(私たちのチームのほとんどはZSHを使用しています)を使用してzshシェルで実行できると思いましたが、協力しません。

 bash -c "git ls-remote | grep (git name-rev --all | grep (git branch --show-current) | awk '{print $1}') | awk '{print $2}'"

bash: -c: line 0: syntax error near unexpected token `git'
bash: -c: line 0: `git ls-remote | grep (git name-rev --all | grep (git branch --show-current) | awk '{print }') | awk '{print }''

どんなアイデアがありますか?

ありがとう、

悲しい

関連情報