Subversion(SVN)で、差分管理させずに履歴のみ使用したいのですが、方法が判る方がおりましたら、方法を教えてください。

※映像ファイル容量の問題で、最新と作業ログさえあれば良いと言う感じです。

宜しくお願いします。

回答の条件
  • 1人50回まで
  • 13歳以上
  • 登録:2012/06/12 13:53:03
  • 終了:2012/06/17 13:23:37

ベストアンサー

id:JULY No.1

JULY回答回数966ベストアンサー獲得回数2472012/06/12 15:56:47

ポイント300pt

少なくとも、Subversion の機能としては備わっていないようです。

svn - How can I have Subversion keep only the latest version of a file? - Stack Overflow
上記ページは、同様の質問があった英語のページですが、回答は軒並み「できない」でした。

一応、ヒントらしきものとしては、

I wonder if, as an alternative, there is a method to use some svn hooks you could use to automatically retrieve a file from another location on checkout/update?

「hook スクリプトを使って出来ないかなぁ」という話で、上記の文を書いた人は、チェックアウトやアップデート時に別なところからファイルを引っ張ってきて、といった話をしていますが、post-commit のスクリプトで、「コミットが成功したら、最新のファイルだけを残して消す」という事が出来れば、実現できるかもしれません。

ただ、少なくともこれを実現するための、正規のインタフェースは無いので、リポジトリ内のファイルを自分でいじる事になります。

リポジトリの中を覗くと、db/revprops にログ関係が、db/revs にファイルの中身が含まれている感じですが、この中身をどういじれば良いかは分かりませんし、果たして、辻褄が合うようにする事ができるかも分かりません。

Subversion のソースを眺めながら頑張れば、原理的に不可能ではないかもしれませんが、少なくとも、備わった機能としては存在しないと思われます。

id:masa_Ver2

出来るか、出来ないか、なら出来るかもしれないが、相当高い壁があるって事が判りました。
ありがとうございました。

2012/06/13 18:55:32
  • id:ku__ra__ge
    回答になってなさそうなのでコメントで。
    コミットログが記録したいだけであれば、履歴管理したいファイルそのものではなく、ファイルから求めたハッシュ値を格納したテキストファイルをsvnで履歴管理するというのはどうでしょうか?

    具体的には、
    md5sum.exe 《管理したいファイル》 > dummy.txt
    みたいなバッチを組んでおいて、実際に管理するのは dummy.txt にするとか。
  • id:masa_Ver2
    ありがとうございます。
    実際の作業はデザイナーさんが行う為に、この手法はちょっと出来なさそうです。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません