現在の作業ディレクトリではないディレクトリがgit作業ツリーにあるかどうかを確認するには?

現在の作業ディレクトリではないディレクトリがgit作業ツリーにあるかどうかを確認するには?

現在のディレクトリが次のようにテストできます。

[[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == true ]] && echo yes

.. しかし、現在の作業ディレクトリではないディレクトリで同じ作業をどのように実行しますか?

ベストアンサー1

ただ使用-Cグローバルオプションgit。これでコードを単純化します(戻り状態に直接エンコードされた情報を再構成するために出力を解析するのはなぜですか?)。

directory=. # or wherever
if git -C "$directory" rev-parse --is-inside-work-tree >/dev/null 2>/dev/null; then
  echo yes
fi

おすすめ記事