Subversionでコミットを削除できますか?
-
28-10-2019 - |
質問
2つのファイルを追加するのを忘れたため、事故ごとに2回コミットしました。ログから特定のコミットを削除できますか?
コミット№4を削除したい。
解決
簡単な答えは「いいえ」です。コミットを追加したときにSubversionがケースを解決する方法を知らないため、他の誰かがチェックアウトを更新してから、履歴からコミットを削除します。Subversionストレージの手術を含む複雑な答えがある場合とない場合があります。
他のヒント
- AFAICS、r4を削除しないが、r5とマージしますか?
- Siiが言ったように、一般的に、SVNのコミット履歴は不変です。
リポジトリを削除/作成する権限がありません-何もできません。
現在のリポジトリを削除して、新しい履歴で新しいリポジトリを作成できる場合は、次のことを試すことができます。
- 人間が読める形式にするための
svnadmin dump
(かろうじて言わなければならない) リポジトリ-ダンプ、grok形式、ダンプの編集、リポジトリの削除、svnadmin load
リポジトリを再作成するには - 別のアイデアは(ダンプを編集する代わりに)別のものです SVNへのブリッジを持つSCM(hg + MQ(histedit)+ hg-git、f.e、 リポジトリを取得し、チェンジセットを折りたたむ/削除することができます)。交換用 古いリポジトリ-上記のp.2を参照
- 人間が読める形式にするための
あなたの場合、実際に行った変更を反映するために、コミット#4に関連付けられたコミットコメントを変更する必要があります。SVNリポジトリー構成を変更することにより、Subversionでそれを行うことができます。 Subversion FAQ を参照してください。
なぜですか?Subversionに履歴を保持させましょう-それが目的です。早めに頻繁にチェックインしてください。コミット#4を消去する必要はありません。
所属していません StackOverflow