このコマンドを使用できますlocate --regex '/.git$' | grep username
システム上のすべてのgitリポジトリを検索しますが、.svn
コマンドlocate --regex '/.svn$' | grep username
同様に機能します。
前者は約120を生産し、後者は14,000を超えました。
subversonリポジトリを分類するには、どのファイルまたはディレクトリ名を検索する必要がありますか?
承認された回答:
Gitでは、すべての作業コピーは独自のリポジトリです。これはSVNには当てはまりません。したがって、実際にリポジトリを検索したい場合 、およびそれらはデフォルトの場所にあり、ローカルマシン上にあり、これで十分です:
ls /var/svn
あなたが実際に作業コピーを見つけたいと仮定します 、バージョン1.7以降のSVNは.svn
のみを配置します 作業コピーの最上位にあるファイルなので、コマンド
find / -type d -name '.svn'
うまくいくでしょう。または、以前のSVNを使用していて、これらのディレクトリが全体に散らばっている場合は、次のことを試してみてください。
find / -type d -name '.svn' -exec dirname {} \; \
| sort \
| awk 'NR == 1 || $0 !~ "^"LAST { LAST = $0; print}'
これは、.svn
を含むすべてのディレクトリを一覧表示します サブディレクトリは、プレフィックスとして別のディレクトリを含まないサブディレクトリのみを出力します。
locate
を含むコンピューターを見つけました 、ここで
$ locate --version
mlocate 0.26
Copyright (C) 2007 Red Hat, Inc. All rights reserved.
This software is distributed under the GPL v.2.
This program is provided with NO WARRANTY, to the extent permitted by law.
このシステムでは、最終的なfind
と同様のアプローチ 例:
locate -r '/\.svn$' \
| sed 's/^\(.*\)$/"\1"/' \
| xargs dirname \
| sort \
| awk 'NR == 1 || $0 !~ "^"LAST { LAST = $0; print }'