2011-01-17 5 views
2

大きなSVNリポジトリをクローンしました(約8,000コミット)。git svn fetchが最初のクローンの後に変更されたSubversionコミットメッセージを取得しない

それ以来、約20個のSubversionコミットメッセージのコミットメッセージが変更され、誤字が訂正されました。これは合法的に行われました。しかし、git svn fetchは更新されたコミットメッセージを取得しません。古い古いコミットメッセージは引き続き表示されます。

これを修正する方法はありますか?好ましくは、クリーンな方法で、私のローカルgitリポジトリをハッキングしないでください。

git svn fetch -r 1234(1234は既知のリビジョン番号です)を試しました。しかし、運がない。

答えて

1

http://git-scm.com/docs/git-svnから:

のgitのsvnが

をリセットするには、戻って指定されたリビジョンへのフェッチの効果を元に戻します。これにより、 はSVNリビジョンを再取得できます。

[...]

フォローをフェッチし、新しいツリー上にローカル 枝を移動するために リセットやGitのリベースをgitのでリセット。リビジョン1234そのコミットメッセージが変更された最初のものであれば何でもが異なる場合は、あなたがコミットメッセージを含め、

$ git svn reset -p 1234 
$ git svn fetch 

を行うだろう、あなたの場合はそう

は、その後、新しいコミットがあります新しいSHA1を使って、まったく別のオブジェクトを作成することができます。そのため、必要なブランチを適切な書き換えコミットに再デプロイする必要があります。