背景 Subversionのリポジトリを長く運用していると、同じファイルが何度も新規でAddされていることに気づくことがあります。プロジェクトによっては、バイナリをaddせざるを得なくなることも少なくなく、その場合、確実に重複したファイルがリポジトリ上に存在する状況になります。 実際、僕が運用している会社のリポジトリでは、xxxx.dllという全く同じファイルがあっちにもこっちにもaddされているという実情がありました。それぞれのプロジェクト担当者は、そのファイルが他のプロジェクトでも使われていることを気づいていないわけで、仕方ないわけではあります。 そこで、これらの同一ファイルを検出して、その間に嘘のSvn Copy履歴を追加するという処理をすれば、リポジトリの肥大化や非効率化への対策になり、また、変更のトラッキングに有利になるのではないかと考え、適当にコードを書いて見ました。 とは言っ