特定のリビジョンの変更を一時的にスキップするには

開発中に不完全な状態でコミットされ、trunkのビルドが通らなくなることはよくある。
そういう場合、修正されるのを待っていては自分の作業が進まないので、問題のあるリビジョンを一時的にスキップすることにする。
たとえば、リビジョン27が問題だったとすると

$ svn merge -r 27:26 .

として、逆マージすれば、local環境でリビジョン27の修正がなかったことになる。
このあとコミットしてしまうと、リポジトリ上でもリビジョン27の変更が取り消される
(正確には最新のリビジョンで上書きされる)。
本当に取り消したい場合はコミットすればよいが、とりあえず問題のあるリビジョンを飛ばして作業を進めたいだけであれば、ひと段落したところで、revertでリビジョン27の修正を元に戻しておけばよい。
詳細は、Subversion実践入門の101p参照のこと。
つまり、Subversionにおいては逆マージとは「取り消し」のことを指す。
Gitでは別の意味らしいのでその点は注意。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です