case "$(git ls-files)" in one ) echo pass one ;; * ) echo bad one ; return 1 ;; esac && ( case "$(git ls-files)" in two ) echo pass two ;; * ) echo bad two ; exit 1 ;; esac ) && case "$(git ls-files)" in dir/two"$LF"one ) echo pass both ;; * ) echo bad ; return 1 ;; esac && for i in 1 2 3 4 ; do git checkout main -b $i || return $? test_commit $i $i $i tag$i || return $? done