2

バージョン管理システム (git または SVN) の下にあるファイルを除いて、コンピューター上のすべてのファイルを検索する必要があります。VCSのメタファイルだけでなく、作業コピー内のすべてのファイルを見つける必要がないため、次のようなものは使用できません

find . -type f \! -path \*/\.svn/\*;

何もわからないので助けてください。
ありがとうございました!

4

1 に答える 1

1

現在の作業ディレクトリ ( 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 ';' ')'
于 2012-09-21T21:05:44.090 に答える