現在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_ …


こちらのサイトを見てみるとincludeで切り出してリポジトリ化したいフォルダだけ取り出したとしても、履歴に関係する依存関係のフォルダも一緒に切り出してからsvnadmin loadしないとエラーとなってしまうということが書いてあるようですが、svndumpfilter時にそれらの依存関係のあるファイル群も一緒に自動的に切り出してくれるようなやり方などありませんでしょうか?


どうぞ、よろしくお願い致します。

A 回答 (2件)

同じく…試したことはない……ですね。


複数のプロジェクトを1つのリポジトリに入れることはあまりありませんし。
# SVNサーバ自体が自分の管理下なので必要になればリポジトリ新設して対応可能だし。

手元にあるリポジトリで、branchsだけ切り出す。
なんてのをやってみたら……
svndumpfilter時に
>Revision 35 skipped.
>svndumpfilter: Invalid copy source path '/trunk'
>プロセスが、存在しないパイプに書き込もうとしました。
とか言われてしまいました。
# 実際にダンプできていたのかは不明。

>svndumpfilter時にそれらの依存関係のあるファイル群も一緒に自動的に切り出してくれるようなやり方などありませんでしょうか?

includeではなく、不要なプロジェクトをexcludeで外す…という方法ではどうですかね?
複数あるならパイプで繋いで一つずつ外していけばよいかと。
# branchsやtagsの中がどうなるか…ってのはありますかねぇ。
# まずはそっちのをexcludeで外していって、最後にtrunk…かなぁ???

>現在SVNのリポジトリが30Gbyteくらいもあるので

ビルドのたびに生成される中間ファイル(オブジェクトファイルなど)はリポジトリに含めない方がいいですよ。
と忠告はしたような気がしますが……。
# ちょっと過去の質問とか検索したけど見つからん。……別の人だったかな。

SVNの関係上テキストファイルなら差分で持つけど、バイナリファイルはコミットごとにまるまる保存されていく……ハズ。
    • good
    • 0
この回答へのお礼

回答頂きありがとうございます。やはりbranchとか繰り返して作業した場合には依存関係が複雑になるので、それらをチェックしながら綿密に切り出しとかやらないといけないんだなということがわかりました。

ちょっと頼まれた人からもソースコードのテキスト以外にバイナリが多すぎるとリポジトリがとても重くなるので、やめて新規のリポジトリを立ててほしいみたいな同じようなことを言われています。

私としては簡単に、短時間でリポジトリの一部切り出し移動とかができるのであれば、今までの変更履歴もshowlogで参照しやすいだろうなと思ってたのですが、ようやくあきらめられそうです。


includeよりもexcludeでちょっとずつリポジトリのダイエットを進めていったという方のサイトを見て、私はまだやっていませんが何となく理解できました。


助かります。

お礼日時:2014/04/02 13:39

エラーメッセージを含めて検索しただけで試したことはない.



参考URL:http://kgirlssworld.blogspot.jp/2012/08/svn-repo …
    • good
    • 0
この回答へのお礼

回答頂きありがとうございます。svndumpfilterの解説ページ紹介頂きありがとうございます。助かります。

お礼日時:2014/04/02 10:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QSubversionで日本語ファイル名が文字化け

Subversion+TortoiceSVNでソースコードの管理を行っているのですが、
つい最近、両ソフトをバージョンアップ(svn 1.6.xx⇛1.6.16?)したときから
ファイルのロールバックが出来なくなってしまいました。

ロールバックしようとするとチェックアウト画面のリポジトリのURLで
日本語のパス&ファイル名がURLエンコードされた状態になっており、
チェックアウトできません。

解決方法はありませんでしょうか?

よろしくおねがいします。

Aベストアンサー

>しかし、リポジトリURLは未だにURLエンコード状態…。
>こちらの解決方法はご存知ありませんか?

指定し直す…くらいですかね。
httpプロトコル、svnプロトコルではURLエンコードされていてもとりあえず問題ないですから。
とはいえ、チェックアウトすると作業コピーの名前が酷いことになりました。
リポジトリURLの「...」ボタンでブラウザ起動して再指定することで直りましたが。
# file:の時のようにファイルシステムからパスを指定する必要がない(というか上位ディレクトリに戻れる階層が多くない)ので、それほど手間ではないですし。

Q”Tortoise SVN” と ”Subversion”って違いはなんですか?

1年前くらい前から、知人が使っていて便利そうだと思いTortoiseSVNをダウンロードして使っています。

知人はプログラマでこの手のソフトを使って仕事をしているらしく詳しい人間で、このTortoiseSVNのダウンロードサイトを教えてくれました。ただ、彼はこれのことを必ずと言っていいほど”Subversion”と呼んでいます。

OKWaveでTortoiseSVNのことでわからないことがあるときに検索してみたのですが、ある人は”TortoiseSVN”である人は”Subversion”と呼んでいたりするのですが、何か深い意味はあるのでしょうか?

Subversionは親フリーソフトで、それから派生したものがTortoiseSVNみたいな話なのでしょうか。SVNソフトって世の中にいろいろとあるというのは聞いたことがあります。

ご存じの方いらっしゃいましたらどうぞご教授よろしくおねがいいいたします。

Aベストアンサー

バージョン管理システムの名前はあくまで「Subversion」です。
Subversion単体でもバージョン管理はできますが、
元々、Subversion はUNIX用のソフトで、コマンドプロンプトからのCUI操作が基本になっています。

ですが、Subverison は、データを管理する「サーバ」と、利用者側の「クライアント」に分かれており、
本家Subversionよりも便利な「クライアント」がいろいろ開発されています。
「TortoiseSVN」は、そういった「Subversion」のクライアントの一つです。
Windows用のGUIを備えてますので、TortoiseSVN から Subversion サーバに接続することで、マウスで簡単にSubversionリポジトリにアクセスすることができるようになるのです。

つまり、質問者さんはバージョン管理に
サーバ: Subversion
クライアント:TortoiseSVN
を使っているという状況なのです。

Q日本語の素晴らしさとは何か

 
英語と比べて日本語の素晴らしいところは何ですか。
また日本語の良くないところはありますか。

話し言葉としての日本語、書き言葉としての日本語、文法からみた日本語、文芸からみた日本語、コミュニケーション能力としての日本語、情報伝達手段としての日本語、その他あれこれとしての日本語についてお聞かせ下さい。
 

Aベストアンサー

 「日本語」といっても仮名文字もあれば漢字もあり、更にはローマ字もありますよね。だから一概に「ビジュアル系やオーディオ系」と簡単に分類もできない話ですよ。
 その漢字ですらも漢音もあれば呉音や唐音もあります。そしてこの漢字が日本に入ってきた当初の原則は「人の音に対して一文字を充てて表記する」とのルールの下で「文字記述」が行われてもいました。これを万葉仮名と呼び、文字の意味などはさほどに重視もしていなかった。その背景ですが、日本には「文字がなかった」ことが最大の理由です。
 その後、統治組織および法に基づく政治システムを確立するためにはどうしても「文書記録」が必要となり、文書様式を含めての「言語としての日本語」が本格的に形成され始めもします。
 そして中世から近世にかけて、質問者様が挙げられた「日本語的特性」に変化が現れ始めます。「南蛮文化」はそれまでとは全く異なる性質を有しその文化との邂逅がそれにあたります。
 ポルトガルの商人や宣教師達は「自身が耳で聴いた日本語」をそのままローマ字表記で記し、そこに母国語での訳語を載せた辞書を作ります。『日葡辞書』と呼ばれ、合理的な作りになっていることで知られてもいます。この文献を調べれば、その当時に「日本人がどの様に発音していたか」も知ることができます。
 他にも「同じ音でありながら、異なる文字を宛てる性質の仮名文字」もあります。たとえば「い→ゐ」「え→ゑ」です。そして「ゑ」も場合によって「酔う」や「要う」との漢字を充てられている場合もみられます。
 そして日本語と英語に共通する部分もあって「外来語の受容に寛容である」との部分です。英語のmoustacheの語源はフランス語に由来するとも言われ、日本語のカルタはポルトガル語のCartaに語源を発するとも言われています。
 そして「日本語を表記する」仮名文字も漢字は見かけで難しく見えますが筆順からみれば合理的かつバランス良く書く事ができるともいえるでしょうね。
 難点があるとすれば「方言」の問題で、話し言葉だけで理解しようとしても困難を窮める場合も多々あり、外国語を学ぶよりも苦労することも珍しくはありません。

 「日本語」といっても仮名文字もあれば漢字もあり、更にはローマ字もありますよね。だから一概に「ビジュアル系やオーディオ系」と簡単に分類もできない話ですよ。
 その漢字ですらも漢音もあれば呉音や唐音もあります。そしてこの漢字が日本に入ってきた当初の原則は「人の音に対して一文字を充てて表記する」とのルールの下で「文字記述」が行われてもいました。これを万葉仮名と呼び、文字の意味などはさほどに重視もしていなかった。その背景ですが、日本には「文字がなかった」ことが最大の理由です。
 ...続きを読む

QTortoise SVN のレポジトリを作成について

Tortoise SVN を使用していまして、Tortoise のレポジトリを作成というコマ
ンドで、Subversion を使用しなくてもバージョン管理ができてしまいます。
この方法はあまり良くないと聞いたのですが、具体的にどういう所が良くない
のでしょうか?

Aベストアンサー

TortoiseSVNだけでは、作成したリポジトリに外部(他のPC)からアクセスできません。
Windowsのファイル共有を使用して、file:///PC名/共有名 で外部からアクセスすることも可能ですが、
この場合は複数のPCからのアクセスに対して正しく動作しない可能性があります。
# 日本語ランゲージパックを適用している場合は、「ヘルプ」→「TortoiseSVN」→「リポジトリ」→「リポジトリの作成」→「ネットワーク共有にあるリポジトリへのアクセス」に記述されています。

svnserveベースのサーバ、またはApacheベースのサーバで、適切に設定されていれば、外部からのアクセスで問題になることはないかと思われます。
# ちなみに私はsvnserveベースでやってます。
# http://subversion.tigris.org/ からWindows binaries~DLしてきて、
# インストールと設定が必要になりますけど。
# CollabNet Subversionの場合、クライアントのみ…というのがあるみたいですが。

TortoiseSVNだけでは、作成したリポジトリに外部(他のPC)からアクセスできません。
Windowsのファイル共有を使用して、file:///PC名/共有名 で外部からアクセスすることも可能ですが、
この場合は複数のPCからのアクセスに対して正しく動作しない可能性があります。
# 日本語ランゲージパックを適用している場合は、「ヘルプ」→「TortoiseSVN」→「リポジトリ」→「リポジトリの作成」→「ネットワーク共有にあるリポジトリへのアクセス」に記述されています。

svnserveベースのサーバ、またはApacheベースのサ...続きを読む

Q外国人に日本語を教えるときは日本語で教える?

まったく日本語を知らない外国人に日本語を教えるときは、日本語を使って教えるのでしょうか?
今まである程度日本語を知ってる人に日本語をボランティアで教えたことはあります。
そのときは、日本語を使って話しても相手は理解していたので、日本語で教えました。

今度まったく日本語を知らない外国人に、日本語を教えることになりました。
ボランティアなのですが、相手は日本に住んでいません。
どのように、教えたらいいでしょうか?
最初は、その人(ベトナム)の国の言葉で書かれた日本語テキストで初級文法をあらかじめ学んでもらうのがいいでしょうか?(そこを私に教えてほしいのだとは思うのですが・・・)。

*日本語をまったく知らない
*英語もそれほどできない

という外国人に、日本語を教える方法を教えてください。

よろしくお願いします。

Aベストアンサー

日本語を海外で教えた経験があります。
まったく日本語を知らない外国人の場合はその人がわかる言語で教えます。
ただ、システムが非常にうまくできている教材を使う場合は、日本語で教えることができます。たとえば椅子の絵が書いてあって横にIsuと書いてあればわかります。
また「私は走る」と書いて自分を指している絵があって、その横に走っている絵があります。
次に泳ぐ、勉強する、踊るとかそれぞれの動詞の横に絵が描いてあるような教材です。

でも・・・ 貴方の場合は相手が日本に住んでないのですからこれはかなり厳しいですね。

Qcvs -n update に対応したsvn ?

cvs -n update でどのファイルがレポジトリで更新されたか?の情報だけを取得するのと同じことをsubversion で行ないたいのですが、どのようなコマンドで行なえばよいのでしょうか?

svn -r HEAD diff | grep Index
などとすれば、どのファイルが更新されたかは分かるのですが。。


宜しくお願い致します。

Aベストアンサー

Version Control with Subversion
http://svnbook.red-bean.com/index.en.html
のに
Appendix B. Subversion for CVS Users
http://svnbook.red-bean.com/en/1.7/svn.forcvs.html
としてまとめられています、読んだことはありますか?

※ 日本語ページ http://svnbook.red-bean.com/index.ja.html に「Subversionの非公式の日本語訳」とありますが、リンクが切れています。
こちらに日本語訳があります。
http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/html-chunk/svn.forcvs.html


http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/html-chunk/svn.forcvs.status-vs-update.html
が答えになると思います。

Version Control with Subversion
http://svnbook.red-bean.com/index.en.html
のに
Appendix B. Subversion for CVS Users
http://svnbook.red-bean.com/en/1.7/svn.forcvs.html
としてまとめられています、読んだことはありますか?

※ 日本語ページ http://svnbook.red-bean.com/index.ja.html に「Subversionの非公式の日本語訳」とありますが、リンクが切れています。
こちらに日本語訳があります。
http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/html-chunk/svn.forcvs.html


http://www.caldron...続きを読む

Q日本語教師って???

外国人に日本語や日本の文化を教える『日本語教師』。

知人が資格を取るべく勉強中ですが、彼女は英語やその他の外国語がまったく話せません。

不思議に思って「外国語は話せなくても大丈夫の?」と聞きましたが
「日本語で日本語を教える方法があるのよ」と煙に巻かれてしまいました(笑)
 
日本語がわからない相手に どうやって日本語で日本語を教えてるのか 合点がいきません。

ご存知の方、教えてください。

Aベストアンサー

知人に日本語教師がおります。
外国語は話せない・・・と言っております、実際授業を見てみると、英語まじりになってます。
「外国語を話せる」程度によるんだと思いますが、恐らく、大抵の日本語教師の方々は、カタコト英語なら大丈夫のハズです。

教わる相手(生徒)も、少なからず母国語以外を学ぼうとしている向上心のある方のはず(!)ですから、日本語または英語を少しくらい使えるのだと思います。

まったく母国語以外NGの生徒さんでも、例えば、電話機を手にとって「電話!」と言えば、手に持っているものは日本語で「でんわ」というんだな、と理解できますよね?
自分の事を指さして「わたし!」と言い、名札に書いてある名前を指さし「○○」と言うと、「あぁ、この人は○○さんなんだな」と理解できると思います(^-^;)

>「日本語で日本語を教える方法があるのよ」
ジェスチャーまじりの日本語で、日本語を教える事が出来るかも・・・

ちなみに、私の義兄はアメリカ人で、ほとんど日本語がNGです。義兄との会話は、私のカタコト英語と、ジェスチャーが主体です。
英語で英語を教わる事が出来るので、日本語で日本語を教える事も可能だと思います(^-^;)

知人に日本語教師がおります。
外国語は話せない・・・と言っております、実際授業を見てみると、英語まじりになってます。
「外国語を話せる」程度によるんだと思いますが、恐らく、大抵の日本語教師の方々は、カタコト英語なら大丈夫のハズです。

教わる相手(生徒)も、少なからず母国語以外を学ぼうとしている向上心のある方のはず(!)ですから、日本語または英語を少しくらい使えるのだと思います。

まったく母国語以外NGの生徒さんでも、例えば、電話機を手にとって「電話!」と言えば、手に持...続きを読む

QLinuxでsvnコマンドでcommitしたい。

現在Ubuntu Linuxを使用しています。svn管理のディレクトリ内で、a.outというフォルダを削除しました。
これをSVNサーバー側のリポジトリ側へも反映したいのでcommitしたいのですがどうやれば良いでしょうか?


現在カレントディレクトリは

/root/20140411

このディレクトリです。



20140411のディレクトリがSVNで管理しているディレクトリです。


/root/20140411 カレントディレクトリ内で

# svn update
このようにアップデートを行ってみたら、アップデートできました。


しかし、

# svn commit
これをやっても、コミットされませんでした。

現在のカレントディレクト内をコミットする方法をご教示頂きますよう、お願い致します。

Aベストアンサー

> a.outというフォルダを削除しました。

どのように削除したのでしょう。
もしかするとsvnを通さずに、直接rmやrmdirコマンドで削除していないでしょうか。
それとも下のようにsvnコマンドを使って削除した後で、コミットができないのでしょうか。

$ svn rm a.out

Q「Win7英語版+日本語パック」と「Win7日本語版」の違いは?

Win7製品版を購入する場合の質問です。
(1)Win7英語版を購入して日本語パックを適用して日本語環境を使用する。
(2)Win7日本語版を購入して日本語環境を使用する。

質問1.
上記(1)(2)での日本語使用上で何らかの違いがあるのでしょうか。
それともまったく同じものと考えていいのでしょうか。

質問2.
日本語使用上でまったく同じだとすれば、
「Win7英語版+日本語パック」は英語と日本語が切り替えて使用できるので「Win7英語版」を購入するほうがお買い得だといえるのでしょうか。

質問3.
「Win7日本語版」を購入して「英語パック」を追加すれば英語と日本語が切り替えて使用できるのでしょうか。
----------
以上です。よろしくお願いします。

Aベストアンサー

>日本語使用上で何らかの違い

英語版のものは、起動時は英語画面ですし、主な表示に一切日本語がありません。しかし、いったん設定をしたあとは、インターネットなどを見る、ワードなどを扱う際には、それほど苦労しないで使えます。

また、VISTAやXPで使うことのできる他の言語での起動した状態を再現するアプリケーションを利用することで、日本語で起動したように偽装する、場合によっては、原語情報を日本語としてネットのサイトなどのやり取りも可能ですし、日本語以外にインストールできないという制限のものも使うことができるようになります。

それを使うにはテクニックやそれなりの経験も必要かも知れないということです。

>「Win7英語版」を購入するほうがお買い得

英語をメインに使い、日本語も使いたい人にはお買い得でしょう。しかし、日本語メインの人には不便な面も多いので、慣れるのには苦労する、あるいは、使いこなせない可能性も結構あります。

>英語と日本語が切り替えて使用できるのでしょうか。

原語のオプションで日本語を選択追加するだけで英語版で日本語入力などが自由になるように、日本語版でも英語をオプションで追加するだけで英語入力が簡単にできます。

私は、日本語と英語版のVISTAやXPを半々程度使っていますが、どれも同時に英語も日本語も使えるようにしてあります。慣れているので、英語版でも困りませんが、起動時や設定はすべて英語ですので、それを切り替えることができないだけに、苦労することもあるかも知れません。

勉強にもなりますし、英語版はデザインも無駄が少ないように思えますので、私は好きなのですが、他人が私のパソコンを使おうとすると、思い通りに動かずに入力などで非常に苦労します。慣れですので、それを苦痛と感じなければ、お買い得でしょう。

>日本語使用上で何らかの違い

英語版のものは、起動時は英語画面ですし、主な表示に一切日本語がありません。しかし、いったん設定をしたあとは、インターネットなどを見る、ワードなどを扱う際には、それほど苦労しないで使えます。

また、VISTAやXPで使うことのできる他の言語での起動した状態を再現するアプリケーションを利用することで、日本語で起動したように偽装する、場合によっては、原語情報を日本語としてネットのサイトなどのやり取りも可能ですし、日本語以外にインストールできないという制...続きを読む

QSVNでタグ指定でコミット履歴を見る方法は?

SVNでタグ指定でコミット履歴を見る方法は?

SVNで特定のファイルにのコミットコメント履歴を見たいと思っています。
その際に、2つのタグを指定しその間の履歴のみを参照したいと思っています。

CVSでは普通に用意されていて、容易に実行できました。
SVNでも同等の機能があるはずだと思っていたのですが、
少し調べたところCVSとは違い、タグを指定してコマンドを
実行する文化が無いようだということは分かりました。

代わりに、タグをつけたときのリビジョンを指定すればいいのですが
タグをつけたときのリビジョンの取得方法が分かりませんでした…。


そこで質問です
(1)(もしあるならば)SVNコマンドでタグを指定して
 コミットコメントの履歴を取得する方法
(2)SVNコマンドでタグを指定してそのリビジョン番号を取得する方法

※(1)(2)ともにそうですが、出来ないことが分かっているのなら
「出来ない」という情報をいただけるとうれしいです。
※作業自体はシェルに書き込むので、SVNへの複数回のアクセスや
Linuxコマンドを組み合わせて実行するのでもかまいません。

よろしくお願いします。

SVNでタグ指定でコミット履歴を見る方法は?

SVNで特定のファイルにのコミットコメント履歴を見たいと思っています。
その際に、2つのタグを指定しその間の履歴のみを参照したいと思っています。

CVSでは普通に用意されていて、容易に実行できました。
SVNでも同等の機能があるはずだと思っていたのですが、
少し調べたところCVSとは違い、タグを指定してコマンドを
実行する文化が無いようだということは分かりました。

代わりに、タグをつけたときのリビジョンを指定すればいいのですが
タグをつけたときのリ...続きを読む

Aベストアンサー

Subversionでは、タグの扱いがCVSとは違いますが…その辺りは理解されています?

推奨されているSubversionのリポジトリレイアウトでリポジトリを作成した場合、
タグを設定すると、「その時のリポジトリのコピー」を作成するような感覚になります。

タグ1を作成(Rev10)
ブランチ2を作成(Rev11)
ブランチ2にコミット(Rev12~14)
トランクにコミット(Rev15)
ブランチ2にコミット(Rev16)
トランクにブランチ2をマージしてコミット(Rev17)
タグ2を作成(Rev18)
とした場合、どこのログが欲しいのでしょうか?

svn log タグ1のURL
の場合は、タグ1を作成した時に記録したログしか出ませんし、
svn log タグ2のURL
の場合は、タグ2を作成した時に記録したログしか出ません。

上記のRev11~Rev17のログは取得できません。
リポジトリのルートでRev10~Rev18のログを取得することで、全部のログが取得できますが…
コミットした時のパスは異なっているので、そこから抽出するの少々手間が掛かるかと思われます。

一般的なSubversionの運用では、タグを切った後はそのタグに対してコミットすることはない…と思われますが。
この場合は、
svn info タグのURL
とすることで、Last Changed Revがリビジョンとなります。
# もちろん、タグの下でコミットしていたらアテになりませんが…
# その場合は svn log タグのURL で、最後に表示されたリビジョン…となるでしょう。

Subversionでは、タグの扱いがCVSとは違いますが…その辺りは理解されています?

推奨されているSubversionのリポジトリレイアウトでリポジトリを作成した場合、
タグを設定すると、「その時のリポジトリのコピー」を作成するような感覚になります。

タグ1を作成(Rev10)
ブランチ2を作成(Rev11)
ブランチ2にコミット(Rev12~14)
トランクにコミット(Rev15)
ブランチ2にコミット(Rev16)
トランクにブランチ2をマージしてコミット(Rev17)
タグ2を作成(Rev18)
とした場合、どこのログが欲しいのでしょうか?

svn lo...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報