• ベストアンサー
  • 困ってます

Subversionの特定のリポジトリの削除の仕方

Subversionのリポジトリから、ある特定のプロジェクトのフォルダをごっそりそのまま削除したいのですが(このプロジェクトのレイアウトを大幅に変更したくなったので)、やり方が分かりません。 具体的には、以下のことをしたいと思っています。 今、プロジェクトが以下のような感じになっていたとします。 $ svn ls file:///home/foge/Svn/ Csharp/ Perl/ PowerPoint/ ここから"Csharp"のプロジェクトだけをリポジトリからごっそり削除したいのです。 マニュアルを読むと、一度、ダンプファイルを作成して、svndumpfilterのexcludeというコマンドで特定のパスだけ削除できるのかなと思ったのですが、今いち何が起きるのかよく分かりません。 正式なやり方でなくても良いので、とにかく削除する方法を教えてください。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数8860
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.2
  • Wr5
  • ベストアンサー率53% (2177/4070)

やったことはありませんが… $ svnadmin dump /home/foge/Svn | svndumpfilter exclude --drop-empty-revs --renumber-revs Csharp > dumpfile $ svnadmin create /home/foge/Svn2 $ svnadmin load /home/foge/Svn2 < dumpfile で出来るのではないでしょうか? これならば、最悪でも元のリポジトリは残るのでやり直しもきくかと。 svndumpfilterの引数に渡している"Csharp"はもしかたら工夫の余地があるかも知れませんが。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

教えていただいた方法で、まさに希望通りのことができました。 引数についても、"Csharp"で問題ありませんでした。 非常に助かりました。ありがとうございました。

関連するQ&A

  • SubversionのCheckoutについて

    ソース管理ソフトのSubversionについて ご質問させてください。 ■ 環境 OS:Red Hat Enterprise Linux ES release 3 (Taroon Update 8) カーネル:2.4.21-47.ELsmp パッケージ:swig-1.3.25-1.i386.rpm subversion-1.4.2-1.i386.rpm neon-0.24.7-1.i386.rpm ■ 質問内容 Subversionをローカルで使用したいのですが 上記パッケージをインストールしても「Checkout」時に 以下のメッセージが出て上手くいきません。 (レポジトリ作成、Importは出来ました) [メッセージ] svn: relocation error: /usr/lib/libsvn_subr-1.so.0: undefined symbol: apr_temp_dir_get [実行コマンド] $svn checkout file:///home/svn/svnroot/sample . (svnrootにリポジトリ、sampleはプロジェクト名です。) 何かご助言ありましたらよろしくお願いいたします。

  • Subversionで作業一段落の作業コピーを削除したい

    最近 Subversion を知り試行錯誤しているのですが、以外と見つからない (探しかたっが下手くそなのか・・・)のが作業コピーの削除の仕方です。 サーバにリポジトリをそのままにしておくのは当然なのですが、クライアント のHDD容量には限界があり、複数プロジェクトの開発を行なっている私の環境 では作業コピーがクライアントのHDDを圧迫するのが目に見えています。 そこで、一段落ついたプロジェクトの作業コピーを単純に削除し、必要な時に はチェックアウトするという方法をといたいのです。 その具体的な方法が見つけられません。 ここを読めでも結構ですのでご教授頂けないでしょうか?

  • SVNのリポジトリ設置のサーバのHDDが少ない

    現在業務で使っているファイルやフォルダのほとんどはtortoise SVNで管理しています。SVNのリポジトリフォルダは事務所内の共有ファイルサーバでWindows共有のフォルダの中に入れていて、そこにコミットやアップデートを実施しています。 ここ最近この共有ファイルサーバのHDD領域が残り少なくなってきてしまいました。 そこでこれを解決したいと思っているのですが、この場合、NASなどのネットワークストレージを買ってきてそこにリポジトリフォルダを丸ごと転送していく方法が一番よいでしょうか? ちょっと困る問題として、 ・他の人もこのリポジトリフォルダへSVNコミットしたりしているのですが、移すと鳴ると、みんなが一旦ローカルのファイルを完全にリポジトリフォルダへコミットしてからでないと、ファイルの取りこぼしがでてしまうのではないのかと思うこと。 ・リポジトリフォルダを別のIPアドレスの端末から受け取るので、一旦各自がローカル内にあるファイルは一旦全部削除して、新たなNASのIPアドレスからSVN updateを実施しなければいけないのではないか?なのでかなり時間がかかりそう こんなことを思っているのですが、なにかうまいやり方などご存じの方いらっしゃいましたらご教授頂きますようよろしくお願い致します。

その他の回答 (1)

  • 回答No.1
  • koko_u_
  • ベストアンサー率18% (459/2509)

svn delete

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • Subversionのリポジトリの削除

    Subversionを使ってみようと現在ダウンロードしていろいろ試しています。 そこで疑問なんですが、たとえばテスト用で作ったSubvewsionのリポジトリを完全に削除したい場合はどうすればいいのでしょうか? 単純にそのリポジトリ以下のファイルやディレクトリを削除するだけでいいのでしょうか? 現在、Windowsで上でリポジトリ(ローカル)を作成し、TortioseSVN経由で利用しています。 UNIX系の場合でかまわないので、情報があれば教えてほしいです。

  • Subversionのリポジトリでが壊れてしまったようなのですが。。

    Subversionのリポジトリでが壊れてしまったようなのですが、 どなたか修復方法を教えていただけないでしょうか? 状況は以下の通りです。 * on TortoiseSVN(Version 1.4.3.8645) ・リポジトリにimportしようとすると"Error Can't create directory 'D:\user\Creation\Program\Repository\db\transcations\19-1.txn':指定されたパスが見つかりません。"と表示される。 ・Repo-BrowserでShow logをすると"Revision file lacks trailing newline"とエラーが出る。 *on Subversion(Version 1.4.3 (r23084)) ・svn admion recoverすると正常に復旧が終了したように見える。 ・svn dumpをするとリビジョン1のダンプ中に"svnadmin: リビジョンファイルの末尾に改行がありません"とエラーが出て止まってしまう。 リポジトリの管理はTortoiseSVNで行っておりました。脈絡もなくこうなってしまったので原因が分かりません;OSはWindows XP2です。 どなたかアドバイスしていただけると幸いです。

  • svnadmin loadをするとエラーする

    現在SVNのリポジトリが30Gbyteくらいもあるので、そのリポジトリないにある複数のプロジェクトとしているフォルダ毎をリポジトリとして独立させようと思っています。 まず ”/test/project/proj1”というフォルダをsvndumpfilterで切り出してみるために この次ののコマンドを実施しました。 C:\mywork\>svnadmin dump test_works | svndumpfilter include --drop-empty-rev s --renumber-revs test/project/proj1 > proj1_source.dat これで”test/project/proj1”プロジェクトフォルダのみのファイルをdumpすることができました。 そして”proj1_source”という空のリポジトリフォルダを作成し、 svnadmin load /proj1_source < proj1_source.dat とやってみると、 つぎのようなエラーが出てきます。 <<< オリジナルのリビジョン 1 に基づき、新しいトランザクションを開始しました svnadmin: E160013: ファイルが見つかりません: トランザクション 0-0, パス 'test/project/proj1' このようなエラーが出た場合にどのように対処したら良いのか教えて頂けないでしょうか。 http://dqn.sakusakutto.jp/2012/08/svndumpfilter_subversion.html こちらのサイトを見てみるとincludeで切り出してリポジトリ化したいフォルダだけ取り出したとしても、履歴に関係する依存関係のフォルダも一緒に切り出してからsvnadmin loadしないとエラーとなってしまうということが書いてあるようですが、svndumpfilter時にそれらの依存関係のあるファイル群も一緒に自動的に切り出してくれるようなやり方などありませんでしょうか? どうぞ、よろしくお願い致します。

  • Subversion_リポジトリファイルのみ削除

    環境:CentOS6系 作業コピーのファイルを削除することなく、リポジトリのファイルを削除するにはどのようにすればよろしいでしょうか? ご存知の方、アドバイスをお願いします。

  • svnの無視フォルダのアイコンオーバレイ解除

    TortoiseSVNを利用してファイルのバージョン管理をしています。 svnの管理フォルダについて、 右クリック>TortoiseSVN>特定のリビジョンへ更新>更新の深さ>除外 によって、管理ファイルを一括削除した状態で、 管理外のフォルダ・ファイル(無視リストに追加したもの)があると、 アイコンオーバレイが残ってしまいます。 これを解除する方法を知りたいです。★  除外前であればフォルダのプロパティから  Subversion>属性>svn:ignoreを選択>編集  によって削除できます。  除外前に行わないとならない作業なのでしょうか? よろしくお願いします。

  • SUBVERSIONを使った一般的なリリース管理、運用ルールについて

    SVNを使ったリリース管理、運用方法について教えてください。 現在、CVSを使って大規模プロジェクトのソース管理及びリリース管理を実施しています。 その方法は大まかに以下のような仕組みとルールで実施しています。 (1)複数の製造者→自分に必要な資材をチェックアウト→適宜修正→自由にコミット (2)リリースすべき資材のリビジョンの特定 (人間系でEXCELの一覧作成 タグ番号1つに対し、複数ファイルの、ファイル名、リポジトリ上のパス、特定リビジョンを記載) (3)製造者は上記(2)のリリースすべき資材の特定リビジョンへのタグ付け 上記(2)のEXCEL一覧からcvs tag コマンドを自動生成するツールを利用 (4)上記(2)のEXCEL一覧をリリース担当者へ提出 (5)リリース担当者は、上記(4)で受け付けたEXCEL一覧に記載のタグ番号をキーに CVSエクスポートし、共通のコンパイル環境へソースを持ち込みコンパイル (6)コンパイル後の資材を、リリース先の環境へ適宜反映(反映方法等はここでは割愛します) -----ここから本題----- CVSとSVNの差異(SVNでのリビジョン、タグ・ブランチの概念の違い)については、一通り関連サイトを調べて理解しました。 CVSで実施していた上記(1)~(6)は若干面倒ですが、以下のメリットがありました。 ・(2)によって製造元が自分が何をいつリリースしようとしているかソース単位で把握させることができる ・(3)によって複数の人間が修正した複数の資材の様々なリビジョンにひとつのタグをつけてくくれる。 ・(5)によってリリース担当者は製造元が依頼したソースをタグによって間違いなく取得できる。 これらは、数百人以上の製造者が数十のグループにわかれて製造を実施するようなシステム開発においては、リリースコントロールの面で一定の作業品質を保つためにはそれなりに有効でした。(シンプルな運用ルールなので作業にばらつきがあまり出ない。) ★悩み事★ SUBVERSIONでは、 ・リビジョンは常にある時点でのツリー全体のスナップショットである。 ・異なるリビジョンには同一名のタグは付与できない。 ・タグを付与する際に選択したディレクトリ配下のサブディレクトリ及びファイルにしかタグが付与されない。 (CVSでは、タグ指定のCVSエクスポート時に選択したディレクトリ配下は空の階層も含め全て取得できた。) このため、リリース担当者側が資材を受取りコンパイル環境に持込みコンパイルする作業がかなり非効率になります。 一度に複数のグループからLIB管担当に対してリリース依頼を行うような運用体制を前提にしなければならない前提でも、 SVNでは、リリース時の資材の受渡しにおいて、タグを使用せず、リビジョン番号だけ通知するほうがよいのでしょうか?

  • Subversionのリポジトリの公開

    Subversionのリポジトリをインターネットで公開したいのですが、インターネットに公開できるSubversionが入ったサーバがありません。 リポジトリは読み込み専用で良いので、Subversionが入ってないサーバで公開する方法はないでしょうか? 宜しくお願いいたします _ _

  • subversionのリポジトリの作成を簡単にしたい

    現在subversionを使おうと考えているのですが、 クライアントマシン(192.168.0.2)にはTortoiseSVNをインストールして subversionはサーバーマシンLinux(192.168.0.50)にインストールをしており 通常の操作などはインポート、コミット、チェックアウトなどはTortoiseSVNを使っており 非常に満足しているのですが Projectやものによっては、リポジトリ先を別けていたほうが良いので そのたびに リポジトリの作成は、Linuxのマシンの方で svnadmin create --fs-type fsfs [PATH] などしたり Apacheの設定で httpd/conf/httpd.conf アクセス権限なども、都度都度作成しなければならず非常に面倒です。 これら何とかブラウザ上で、Project名を入力したら 自動的にリポジトリの作成とリポジトリにアクセスできる為の設定の変更が 勝手にできるようにならないでしょうか? やはりlinuxのコマンドをチマチマと入力しなければならないんでしょうかねぇ? もしそんなツール類があれば御紹介していただけないでしょうか? お願い致します

  • subversionでリポジトリのリビジョンを変更するには?

    新しいパソコンに移動するために今まで使っていたsubversionを以下のようにして移動させました。(古いレポジトリの最新リビジョンは832だったとします。) $ svnadmin dump oldrepos --revision 500:832 > dumpfile $ svnadmin load newrepos < dumpfile 問題は、この方法で移動すると、新たにリビジョン1からリビジョン番号を付け替えたものになってしまうことです。(例:旧リビション500は、新リビジョン1になってしまう) そのため、既存のworkingコピーから、subversionへ同期がとれなくなってしまいました。 できれば、既存のworkingコピーはいじらずに修正したいので、「svnadmin load」の際に、開始リビジョンを指定できたら良いと思ったのですが、そのようなオプションを見つけれませんでした。 次善策として、svn switchでリビジョンを指定すればよいかとも思ったのですが、うまくいきませんでした。 新しくチェックアウトすることをしないで修正する方法を教えてください。

  • [SVN]Subversionリポジトリの容量削減

    お世話になります。現在数人でゲームを作っているのですが、 グラフィッカーの方が頻繁にデータの上書き紛失などをしてしまうため、 プログラマチームが使っているSVNリポジトリを共用するようにしました。 しかし、大容量ファイルの頻繁な追加・更新・削除を繰り返したようで、 レンタルVPSに置いていたリポジトリはあっと言う間に一杯になってしまいます。 都度リポジトリを作り直して、作業コピーをインポートして 再配置をお願いしているのですが、不便だと不満が絶えません。 私としても「そうならないよう気を付ける」と言う運用はなるべく避けたいです そこで、ある程度古い履歴のみを削除したいのですが、どうすればよいでしょうか? または、他にこのような状況でのベストソリューションがあるようでしたら ご教示の程、よろしくお願いします。