バージョン管理システム (git または SVN) の下にあるファイルを除いて、コンピューター上のすべてのファイルを検索する必要があります。VCSのメタファイルだけでなく、作業コピー内のすべてのファイルを見つける必要がないため、次のようなものは使用できません
find . -type f \! -path \*/\.svn/\*;
何もわからないので助けてください。
ありがとうございました!
現在の作業ディレクトリ ( CWD ) がリポジトリでない場合、ゼロ以外の終了コードgit status
を返します。find がその呼び出しsvn status
の出力を抑制できるとは思わないので、作成します-exec
~/gitstatus.sh:
git status > /dev/null 2>&1
exit $?
~/svnstatus.sh:
svn status > /dev/null 2>&1
exit $?
ファイルの検索は、次の発行によって行われます。
find . -type f '!' '(' -execdir bash ~/gitstatus.sh ';' -or -execdir bash ~/gitstatus.sh ';' ')'