2

この質問は、もともと 2009 年から 2013 年の間にさまざまな例でアクティブでした。

等々。

現在、すべてのソースがひどい解決策を示しています。

さて、それが次のようなものであれば、解決策はそれほどひどいものではありません:

  1. ファイルにダンプします。
  2. 削除するファイルをフィルタ:

svndumpfilter exclude file_name_needs_to_be_removed.txt --drop-empty-revs --renumber-revs < source.dump > result.dump

  1. フィルタリングされたダンプ ファイルを新しいリポジトリ ディレクトリにロードします。

ただし、SVN の名前変更、ブランチなどを使用する場合は、すべての依存関係と--drop-empty-revs --renumber-revs.

今は 2016 年第 3 四半期で、Debian には SVN 1.8 が含まれています。明らかになった新しいソリューションはありますか?

4

2 に答える 2

4

いくつかの参照を使用して、Lazy Badger の回答を拡張します。

SVN グループは、この機能を「抹消」と呼んでいます。これを知ることで、それについてさらに情報を掘り下げることができます。

まず、SVN グループの JIRA の問題である抹消のサポートについて説明します。これは 2001 年 (!) に開設され、実装に賛成、反対の両方で多くの議論を引き起こしました。この問題に関するプロジェクトのコミッターによる最後のコメントは、彼がこの問題に関してある程度の進歩を遂げたことを示しており、マイルストーン/機能のステータス ページを示しています。

この機能の開発ノートはしばらく触れられていません:

>svn ls http://svn.apache.org/repos/asf/subversion/trunk/notes/obliterate/ -v
1398429 stefan2               Oct 15  2012 ./
 878962 julianfo          872 Aug 20  2009 README
 952192 rhuijben         5175 Jun 07  2010 comparison.txt
1398429 stefan2          2488 Oct 15  2012 design-audit.html
1398429 stefan2          3839 Oct 15  2012 design-authz.html
1398429 stefan2         18664 Oct 15  2012 design-repos.html
1398429 stefan2          2500 Oct 15  2012 design-wc.html
 952192 rhuijben              Jun 07  2010 fspec-cc1/
 883799 julianfo              Nov 24  2009 fspec-dd1/
 952192 rhuijben         7742 Jun 07  2010 high-level-design.txt
 904301 neels                 Jan 28  2010 hooks/
 876577 hwright         39780 Mar 12  2009 obliterate-functional-spec.txt
1398429 stefan2          7541 Oct 15  2012 plan-milestones.html
 880336 julianfo              Oct 28  2009 presentations/
 952192 rhuijben        11266 Jun 07  2010 req-spec.txt
 887471 julianfo       290129 Dec 04  2009 schema-bdb-dd1-after.svg
 887471 julianfo       297789 Dec 04  2009 schema-bdb-dd1-before.svg

注: 最後の「実際の」コミットは r906520 (2010 年 2 月 4 日) でした。その後の他のものは、リポジトリのメンテナンス関連でした。

開発者のメーリング リストでは、「抹消」という言葉は 2014 年以来発声されていません。これは、外部ツールとしての括弧付きの参照でした。

修復、分析、およびオフライン フィルタリング (消去) ツールが FSFS オンディスク データにアクセスすることを期待するのは完全に合理的です。

主にsvn-dumpfilterの使用を中心に展開する、厄介な回避策が存在します。ただし、ほとんどの場合、頻繁に発生する可能性のある何かのためにリポジトリをダンプしてインポートすることは、初心者ではありません。

それはロードマップ上にあるので、決して実装されないとは言えません。しかし、(Lazy Badger が述べたように) コンテンツの永久削除は Subversion の当初の設計と目的に反するため、その実装は長く困難なプロセスになる可能性があります。

OSS の標準的な免責事項を覚えておいてください。このプロジェクトは、主に、空き時間に貢献する個人によって構成されています。これより優先度の高い他の機能/修正があるので、それを変更したい場合は、開発者に知らせてください。

于 2016-08-30T15:13:27.313 に答える
-3

簡潔な答え

いいえ、今後もありません

より長い答え

「データを失うことはありません」と「履歴は不変です」(一度コミットすると永遠にコミットされる) は、SVN の基本原則であり、コアとなる原則です 。必ず:

  • 考える
  • コミットする前に
于 2016-08-30T10:23:17.263 に答える