9

svn リポジトリにいくつかのコミットをコミットして、いくつかの変更を加えました。HEAD が r750 にあり、r746-r750 を失わずに r745 を元に戻したいとします。これは可能ですか?

そして、どうにかして r745 を保存し、後で (新しいリビジョンとして) 再適用できますか?

4

2 に答える 2

17

きれいな後方マージができたと仮定すると、これを行うことができます...

svn merge -r 745:744 <source>

その後、再適用する場合は、前方マージして元に戻すことができます。

svn merge --ignore-ancestry -r 744:745 <source>

詳細については、「マージの一般的な使用例」を参照してください。

于 2009-05-01T22:08:59.373 に答える
2

はい、これは間違いなく可能です。

変更を元に戻すと、リポジトリに新しいリビジョンが作成されます。したがって、次のようなことを行います。

1)現在のコピーr750を確認します。

2)を使用して、作業コピーの復帰を指定しsvn merge -rます。作業コピーには、古いバージョンがマージされます。

3)作業コピーをr751としてチェックインします。

これで、履歴に2つのリビジョンがあります。ロールバックしたため、r745を含まない新しいもの(r751)。ただし、r745を再適用する場合は、r745は引き続き存在します。r745のコピーをチェックアウトし、それを作業コピーにマージして、再度チェックインすることができます(たとえば、r752として)。

于 2009-05-01T22:13:31.513 に答える