私はgitフックを書いていますが、次のコードの動作に非常に混乱しています:
#!/bin/sh
exit_code=0
git diff --cached --name-only --diff-filter=ACM | while read line; do
echo "Do something with file: $line"
# some stuff with exit code is equals to 0 or 1
stuff_exit_code=$?
exit_code=$(($exit_code + $stuff_exit_code))
done
echo $exit_code
exit $exit_code
echo $exit_codeは、私のスタッフの終了コードがゼロ以外の場合に、ファイルの合計量を生成することを期待しています。しかし、私は常に 0 を見ています。私の間違いはどこですか?