14

2つのファイルを追加するのを忘れたため、事故ごとに2回コミットしました。ログから特定のコミットを削除できますか?

ログのスクリーンショット

コミット№4を削除したい。

4

4 に答える 4

14

簡単な答えは「いいえ」です。コミットを追加したときにSubversionがケースを解決する方法を知らないため、他の誰かがチェックアウトを更新してから、コミットを履歴から削除します。Subversionストレージの手術を含む複雑な答えがある場合とない場合があります。

于 2011-09-10T12:17:14.360 に答える
5
  1. AFAICS、あなたはr4 を削除していませんが、r5 とマージしていますか?
  2. 一般に、Sii が言ったように、SVN コミット履歴は不変であり、レポを削除/作成する権限がない場合は、何もできません。

現在のリポジトリを削除し、新しい履歴で新しいリポジトリを作成できる場合は、次を試すことができます。

  • svnadmin dump人間が読める(ほとんど、私が言わなければならない)リポジトリダンプ、grokフォーマットと編集ダンプを取得するため、リポジトリを削除svnadmin load し、リポジトリを再作成するため
  • 別のアイデアは、(ダンプを編集する代わりに) SVN (hg+MQ (histedit)+hg-git, fe) へのブリッジを持つ別の SCM であり、リポジトリを取得し、変更セットを折りたたむ/削除することができます)。古いリポジトリの置き換えについては、上記の p.2 を参照してください
于 2011-09-25T08:47:47.470 に答える
2

あなたの場合、コミット #4 に関連付けられているコミット コメントを変更して、実際に行った変更を反映するだけで済みます。SVN リポジトリ構成を変更することにより、Subversion でそれを行うことができます。Subversion FAQを参照してください。

于 2011-09-25T08:57:58.120 に答える
-1

なんで?Subversionに履歴を保持させましょう-それが目的です。早めに頻繁にチェックインしてください。コミット#4を消去する必要はありません。

于 2011-09-10T12:15:54.037 に答える