2012-01-12 5 views
3

コマンドsvn listは、現在のディレクトリ内のすべてのサブディレクトリのリストを私に渡します。 ただし、現在のバージョンに存在するディレクトリのみに制限されています。最新のチェックアウトをしていないSVNリストのディレクトリ?

例えば、 "http://www.example.com/svncode/mainproduct/trunk"

と私はsvn listを行う場合は、トランク内、3つのディレクトリ

trunk/ 
    1/ 
    2/ 
    3/ 

がある、それは私が表示されます:リポジトリのURLがあると言いますすべてのディレクトリ1 2 3。 他の誰かがトランク内にコミットを行います。これはトランクの中に別のディレクトリ4を追加します。 最初に更新を行わずにそのディレクトリの存在を確認する方法はありますか? svn listは最新のsvn updateまでの情報しか提供していないので、その後に起こった変更についてではありません。

背景:私はトランク内の最新のディレクトリの存在を盗んしたい(最大数は、最新を意味し、この場合は4)、及びトランクコードベースではなく、完全なトランクのその部分だけをチェックアウトしたいです。

答えて

6
svn ls http://www.example.com/svncode/mainproduct/trunk 
+0

が必要と思われますが、実際には – DhruvPathak

+0

を確認して元に戻します。あなたはこれが動作するようにチェックアウトする必要はありません。 –

5

することはできサーバー上のLS:

svn ls http://server/repo 
2

あなたはディレクトリにのみ関心があるとファイル除外したい場合:他の回答で述べたように

svn list -R http://www.example.com/svncode/mainproduct/trunk| grep -E '/$' 
1

を:使用svn listリポジトリのURLに

URLの記憶/入力に問題がある場合は、svn infoの出力を使用して現在の作業ディレクトリに対応するURLを取得することができます。組み合わせでは:

SVNローカルでの使用のための
svn list `svn info | grep URL | cut -b6-` 
0

:トランク枝タグフォークのためのリポジトリパス内の位置に不整合がある場合

svn ls svn://yourlocaladdresssvn 
0

、我々は@bernardのようなフィルタを使用する必要があります-de-rubinatはなく、好きなことを変える示唆:

svn ls -R https://some.server.com/svn/someRoot | grep '/trunk/$' 

これは... /トランク/で終わる文字列であることのパターンに一致する再帰のlsの出力のみを選択します。

これは、trunkという名前のディレクトリだけを選択します。

関連する問題