まーじまーじ衝突
mysql-5.0-enterpriseツリーがver5.0.36ベースだったのをver5.0.42に上げるべく、これまで調べてきた方法(bitkeeperブランチを作ってそこにversion upのログを記録させてtrunkにmerge)をやってみたところ、svn merge実行まではうまくいくようになった。
ところが、というか想定通りだけれども、merge時にtritonn版 mysql-5.0.36と衝突したファイルがいくつか出てきた。
とりあえず、configure.inとかがそうで、、、
-rw-r--r-- 1 mir oss 95230 6月 15 14:14 configure.in -rw-r--r-- 1 mir oss 90110 6月 15 14:14 configure.in.merge-left.r40 -rw-r--r-- 1 mir oss 92369 6月 15 14:14 configure.in.merge-right.r42 -rw-r--r-- 1 mir oss 92818 6月 15 14:14 configure.in.working
こんな感じで衝突によってファイルが生成されていた。なんとなく、merge-leftはr40のファイル、merge-writeはr42のファイルなのだろうとか、雰囲気で分かる。でも、workingってなんだろう。オリジナルのファイル名のやつは変更されてるのかなぁ? 普通にdiff/patchの場合はrejファイルの内容を手動で加筆修正するだけでOKなわけだけど、subversionだとこの後の作業ってどうするんだろ。どこかに書いてないかなぁ。ぐぐっても見付からず。
mir@mouse:~/COPY/copy-tritonn/mysql-5.0-enterprise/trunk$ find . | grep "merge-left" ./configure.in.merge-left.r40 ./sql/set_var.cc.merge-left.r40 ./sql/mysqld.cc.merge-left.r40 ./sql/item_func.cc.merge-left.r40 ./sql/sql_show.cc.merge-left.r40
ちなみに衝突は5ファイルで済んだみたい。5.0.36→5.0.42なのでもっと出るかと心配してたのでちょっとほっとした。
ヒント
この辺にありそう
- http://subversion.bluegate.org/doc/ch04s03.html
- http://subversion.bluegate.org/doc/ch03s05.html#svn.tour.cycle.resolve
"svn status"してみたところ、どうもworking/merge-left/merge-rightが要らない子らしい。