subversionで差分を作る。パッチをあてる。
差分を作る
作業ディレクトリで、以下を実行する。
$ svn diff -r 10:HEAD > foo.diff
patchをあてる
$ patch -p0 -E < foo.diff
-E オプションを指定すると、パッチ適用後に空のファイルを削除する。
また、patchが当たるファイルを確認したい場合は、--dry-runオプションをつける。
patch -p0 --dry-run < foo.diff
このとき、ファイルにpatchは適用されない。
あてたpatchを取り消す
-Rオプションで、一応可能。
$ patch -p0 -R < foo.diff
元々-Rオプションは、差分の取り方が逆であったときに利用するオプション。
結果的に取り消すことができるが、そのような目的のオプションではないので、過信しないこと。