subversionで、分岐の履歴を修正する方法を教えてください。


例えば、このような操作をした結果
svn mv hoge trunk
svn ci -m ""

このようなログになりました。
svn log -c 10866 $REPO -v
------------------------------------------------------------------------
r10866 | user | 2010-06-10 15:01:20 +0900 (木, 10 6月 2010) | 2 lines
Changed paths:
D /hoge
A /trunk (from /hoge:10865)
------------------------------------------------------------------------

しかし、本当は下記のようにしたかったのです。
svn cp $REPO/trunk@10863 trunk && svn del hoge

(trunk@10866は、trunk@10863の後継であるべきだったのに、hoge@10865の後継として作られてしまった)

レポジトリ内のファイルを( project/db/revs/10/10866 )直接いじってみたのですがダメでした。
何か良い方法はないでしょうか?

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/09/01 01:55:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答0件)

回答はまだありません

  • id:ku__ra__ge
    svnadmin dump で r10865 までを書きだして、svn load で新しいレポジトリにそれを取り込み、改めて r10866 の操作を行いコミットする……というは流石に無理がありますよね?
  • id:DQNEO
    アドバイスありがとうございます!
    やってみます。

    実はr44000くらいまであるので、r10866をコミットした後どうするのかが問題ですがが・・
  • id:DQNEO
    できました!

    * svnadmin dump & svnadmin load で r10865までを新レポジトリにリストア
    * svnクライアントでチェックアウト&手動コミット r10866
    * 再度svnadmin dump & svnadmin loadで 710867以降をリストア

    ありがとうございました!
  • id:ku__ra__ge
    問題解決の手助けになって幸いです。
  • id:DQNEO
    kur__ra__geさん、すいません間違って受け付け停止しちゃってました。

    このままだとポイントをあげられないので、回答欄に記入をお願いします!

この質問への反応(ブックマークコメント)

トラックバック

  • [Subversion]過去の分岐の歴史を修正する方法 DQNEO起業日記 2012-08-27 03:58:58
    リビジョンが40,000くらいまで進んだ今頃になって、10,000あたりのsvn logが気になりだしたDQNEOです。 こんにちわ。 過去の不適切な履歴を修正したい 普段のオペレーションでsvn cpやsvn mvを適切
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません