svn リポジトリにいくつかのコミットをコミットして、いくつかの変更を加えました。HEAD が r750 にあり、r746-r750 を失わずに r745 を元に戻したいとします。これは可能ですか?
そして、どうにかして r745 を保存し、後で (新しいリビジョンとして) 再適用できますか?
きれいな後方マージができたと仮定すると、これを行うことができます...
svn merge -r 745:744 <source>
その後、再適用する場合は、前方マージして元に戻すことができます。
svn merge --ignore-ancestry -r 744:745 <source>
詳細については、「マージの一般的な使用例」を参照してください。
はい、これは間違いなく可能です。
変更を元に戻すと、リポジトリに新しいリビジョンが作成されます。したがって、次のようなことを行います。
1)現在のコピーr750を確認します。
2)を使用して、作業コピーの復帰を指定しsvn merge -r
ます。作業コピーには、古いバージョンがマージされます。
3)作業コピーをr751としてチェックインします。
これで、履歴に2つのリビジョンがあります。ロールバックしたため、r745を含まない新しいもの(r751)。ただし、r745を再適用する場合は、r745は引き続き存在します。r745のコピーをチェックアウトし、それを作業コピーにマージして、再度チェックインすることができます(たとえば、r752として)。