0

バイナリ ファイルを含むいくつかのディレクトリを含む Mercurial リポジトリを継承しました。

前述のディレクトリ内のすべてのファイルは、ずっと前に Mercurial から削除されており、二度と使用されることはありません。

変更セットのハッシュが原因で、Mercurial からファイルを完全に削除するのは難しいと読みました。

ローカル リポジトリからのみ、またはできれば bitbucket リポジトリからもデータを削除する方法はありますか?

これらのファイルの履歴が Mercurial に残るかどうかは気にしません。それらのためにストレージを無駄にしたくないだけです。

ファイルを bitbucket からうまく削除できない場合、ローカル リポジトリの .hg/store/data の下にある適切な .i ファイルを削除できますか? .i ファイルを bitbucket に保持します。これは、それ自体で、または bitbucket からプルまたはプッシュするときに、ローカル リポジトリに問題を引き起こしますか? 誰も私のローカル リポジトリから複製することはありません。

ありがとう。

4

1 に答える 1

3

実際にデータを削除することはできませんが、Convert 拡張機能を使用してリポジトリを変換およびフィルター処理できます。あなたの場合、Mercurial から Mercurial に変換します。--filemapオプションを参照してください。

新しいリポジトリと新しい変更セット ID が作成されるため、データの削除とは見なされません。ただし、除外するように指示したものはすべて除外する新しいリポジトリになります。

あなたが唯一の開発者である場合は、既存の bitbucket リポジトリを新しいリポジトリに置き換えても安全だと思われます。しかし、私はそれを自分でスクラッチ リポジトリでテストします。開発者があなただけではない場合は、時間をかけて変換を計画してください。(そして、それが苦労する価値があることを確認してください。通常はそうではありません。ディスクは安価です。)

于 2013-09-06T11:57:27.563 に答える