| そういえば、西原さんの blog エントリで知った fast-forward マージの件とか、
| なまじ利用経験があるとハマりそうかも.... > 1.8 版
|
| http://tcha.org/blog/2011/02/05/hg-named-branch-ffmerge/
なんかすっきりしません:
- ブランチ(1st parent側)が分断されて不連続になる。
- hg update REV + hg merge + hg commitしたときにparentがREVじゃないものができる。
- そもそもfast-fowradという名前がイヤ。
% hg init r
% cd r
% date >file
% hg add file
% hg commit -m xxx file
% hg branch AAA
marked working directory as branch AAA
% date >>file
% hg commit -m xxx file
% date >>file
% hg commit -m xxx file
% hg branch BBB
marked working directory as branch BBB
% date >>file
% hg commit -m xxx file
% date >>file
% hg commit -m xxx file
% hg update AAA
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% hg glog
o changeset: 4:c78c76279e44
| branch: BBB
| tag: tip
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (19 seconds ago)
| summary: xxx
|
o changeset: 3:c7820d7780fc
| branch: BBB
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (22 seconds ago)
| summary: xxx
|
@ changeset: 2:c8ce4f49efe8
| branch: AAA
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (31 seconds ago)
| summary: xxx
|
o changeset: 1:c02b7ad5d1da
| branch: AAA
| user: hi...@koie.org
| date: 2011-03-03 01:25 +0900 (36 seconds ago)
| summary: xxx
|
o changeset: 0:8323f53a2ab8
user: hi...@koie.org
date: 2011-03-03 01:25 +0900 (64 seconds ago)
summary: xxx
% hg merge BBB
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
% hg commit -m merge
created new head
% hg glog
@ changeset: 5:3a4904150e96
| branch: AAA
| tag: tip
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (4 seconds ago)
| summary: merge
|
o changeset: 4:c78c76279e44
| branch: BBB
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (36 seconds ago)
| summary: xxx
|
o changeset: 3:c7820d7780fc
| branch: BBB
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (39 seconds ago)
| summary: xxx
|
o changeset: 2:c8ce4f49efe8
| branch: AAA
| user: hi...@koie.org
| date: 2011-03-03 01:26 +0900 (48 seconds ago)
| summary: xxx
|
o changeset: 1:c02b7ad5d1da
| branch: AAA
| user: hi...@koie.org
| date: 2011-03-03 01:25 +0900 (53 seconds ago)
| summary: xxx
|
o changeset: 0:8323f53a2ab8
user: hi...@koie.org
date: 2011-03-03 01:25 +0900 (81 seconds ago)
summary: xxx
%
--
鯉江英隆 <hi...@koie.org>
2011年3月3日2:07 KOIE Hidetaka <hi...@koie.org>:
> | そういえば、西原さんの blog エントリで知った fast-forward マージの件とか、
> | なまじ利用経験があるとハマりそうかも.... > 1.8 版
> |
> | http://tcha.org/blog/2011/02/05/hg-named-branch-ffmerge/
>
> なんかすっきりしません:
> - ブランチ(1st parent側)が分断されて不連続になる。
> - hg update REV + hg merge + hg commitしたときにparentがREVじゃないものができる。
個人的な印象なのですが、全般として linear-history になる方向に舵が
切られている印象があります。1.7 版でも、--merge 無しの backout は
linear-history になりますし....
# http://d.hatena.ne.jp/flying-foozy/20101029/1288366323
私も従来挙動の方がしっくりくるので、--no-fast-forward オプションのパッチでも
提案してみましょうかねぇ? > devel-ML
> - そもそもfast-fowradという名前がイヤ。
まぁ、それは趣味の問題ですので .... (^ ^ ;;;)
--
----------------------------------------------------------------------
[FUJIWARA Katsunori] flying...@gmail.com
Katsunori FUJIWARA wrote:
> 2011年3月3日2:07 KOIE Hidetaka <hi...@koie.org>:
> > なんかすっきりしません:
> > - ブランチ(1st parent側)が分断されて不連続になる。
> > - hg update REV + hg merge + hg commitしたときにparentがREVじゃないものができる。
個人的には、履歴(グラフのモデル)は 1.8 の挙動のほうが好きです。
しかし、 hg merge がしれっとそれをやってくれることには違和感があります。マージと違うんで。
> 個人的な印象なのですが、全般として linear-history になる方向に舵が
> 切られている印象があります。1.7 版でも、--merge 無しの backout は
> linear-history になりますし....
>
> # http://d.hatena.ne.jp/flying-foozy/20101029/1288366323
>
> 私も従来挙動の方がしっくりくるので、--no-fast-forward オプションのパッチでも
> 提案してみましょうかねぇ? > devel-ML
オプションが増えることには良い印象を持ちませんが、議論に上るのは素晴らしいと思います。
リリースノートには書かれていなくても、それなりに大きい変更ですよね。
それでは。
fast-forwardなマージを検証していて、ちょっと困ったのでついでに質問させてください。
マージしたブランチをbackoutする方法はありますか?
既にpushしてしまった場合、rollbackでは不十分なのでbackoutを試みました。
(下記の履歴で言うと、REV5をbackoutしたい)
しかし、REV5に変更点がないため、backoutできません。
secondブランチのREV3:4を順番にbackoutするしか方法はないのでしょうか?
(検証用のリポジトリなので少ないですが、歴史が多いブランチだと結構大変ですよね)
o changeset: 6:a5b36bfaa009
| user: toruuetani
| date: Fri Mar 04 09:09:33 2011 +0900
| summary: after merge second
|
o changeset: 5:be44e7bc1563
| user: toruuetani
| date: Fri Mar 04 09:07:03 2011 +0900
| summary: マージ
|
o changeset: 4:1a38708f53e0
| branch: second
| user: toruuetani
| date: Fri Mar 04 09:06:49 2011 +0900
| summary: second 2
|
o changeset: 3:d15f28eb570e
| branch: second
| user: toruuetani
| date: Fri Mar 04 09:05:52 2011 +0900
| summary: second
|
o changeset: 2:b802bd22384a
| user: toruuetani
| date: Fri Mar 04 09:04:53 2011 +0900
| summary: マージ
|
o changeset: 1:f72193c59f81
| branch: newbranch
| user: toruuetani
| date: Fri Mar 04 09:04:17 2011 +0900
| summary: add txt
自分も Git みたいに -no-ff オプションが欲しいです。
twitter : @toruuetani
2011年3月4日9:44 Toru Uetani <toru....@gmail.com>:
> fast-forwardなマージを検証していて、ちょっと困ったのでついでに質問させてください。
>
> マージしたブランチをbackoutする方法はありますか?
無いと思います。
changelog/manifest 共に、fast-forward マージ実施リビジョンの親は、
マージ元リビジョン単独を指していますので、そのリビジョンでの変更は、
ブランチ変更ぐらいしかありませんから、仮に backout しても、
1.8 以前のようには行かないと思います。
> 既にpushしてしまった場合、rollbackでは不十分なのでbackoutを試みました。
> (下記の履歴で言うと、REV5をbackoutしたい)
> しかし、REV5に変更点がないため、backoutできません。
> secondブランチのREV3:4を順番にbackoutするしか方法はないのでしょうか?
> (検証用のリポジトリなので少ないですが、歴史が多いブランチだと結構大変ですよね)
1回限りのマージであれば、特定範囲の差分(= 上谷さんの例では diff -r 2 -r 4)を
逆向き適用する、などの、backout の手動実施的な手法も使えるとは思います。
但し、継続的なマージが発生している場合だと、これは辛いでしょうねぇ。
> 自分も Git みたいに -no-ff オプションが欲しいです。
週末にでも提案パッチを投げてみようと思います。
>> マージしたブランチをbackoutする方法はありますか?
> 無いと思います。
やっぱりそうですか・・・
> 1回限りのマージであれば、特定範囲の差分(= 上谷さんの例では diff -r 2 -r 4)を
> 逆向き適用する、などの、backout の手動実施的な手法も使えるとは思います。
なるほど。そういう方法もありですね。
>> 自分も Git みたいに -no-ff オプションが欲しいです。
> 週末にでも提案パッチを投げてみようと思います。
よろしくお願いします!!
Toshi MARUYAMA wrote:
> TortoiseHg 2.0 リリースおめでとうございます。
エンコーディング周りの問題がいくつか出ています。新しもの好きじゃない方は
2.0.1 まで待ったほうがいいかもしれないです。 ;)
既知の問題:
- 非 ASCII ファイル名で例外がちらほら
- MQ パッチのメッセージ再編集エディタが文字化け (再入力は大丈夫)
バグが直ってるかもしれない安定版のスナップショット:
https://bitbucket.org/tortoisehg/thg-winbuild/downloads
それでは。
>> 週末にでも提案パッチを投げてみようと思います。
> とりあえず、議論の叩き台用にざっと書いたパッチを投げてみました。
> http://www.selenic.com/pipermail/mercurial-devel/2011-March/028666.html
対応ありがとうございます。
> 本家の devel-ML/本MLどちらでも構いませんので、
> 改善案とか代替案等ありましたら是非お寄せください。
本家のMLを見てみたところ、1.8.1で元に戻そうって流れになってるように読めますがあってます?
fast-forwardは仕様変更じゃなくて、bugfixだよっていうのも驚きです。
どういう形に落ち着くかわかりませんが、1.8(TortoiseHg2.0)の使用はしばらく我慢します。
フジワラ wrote:
> フジワラ@「forward のスペル間違えまくり」です。
>
> On Mar 7, 11:03 am, Toru Uetani <toru.uet...@gmail.com> wrote:
>
> > >> 週末にでも提案パッチを投げてみようと思います。
> > > とりあえず、議論の叩き台用にざっと書いたパッチを投げてみました。
> > >http://www.selenic.com/pipermail/mercurial-devel/2011-March/028666.html
> >
> > 対応ありがとうございます。
>
> 現象に関するフォローのメール、ありがとうございます! > 西原さん
いやー、 Adrian の解説のほうが数百倍分かりやすかったです。出る幕無かった。 ;)
> 私はてっきり fast-forward 化は既定路線(= 既知)のものだと思っていたので、
> 履歴遷移の図は書かなかったのですが、どうやらひっそりとアレしてたみたいで、
> 助かりました。
9e7e24052745 のパッチに図があると盛り上がってたかもしれないですね。
かく言う私はバグだと意気込んで bisect してるうちに 9e7e24052745 へ行き着きました。
> > > 本家の devel-ML/本MLどちらでも構いませんので、
> > > 改善案とか代替案等ありましたら是非お寄せください。
> >
> > 本家のMLを見てみたところ、1.8.1で元に戻そうって流れになってるように読めますがあってます?
>
> その方向で動いている感じですね。
>
> 1.8.1 のリリースも、通常の月例リリースではなく、緊急リリースの体裁を
> 取るようですし.....
>
> > fast-forwardは仕様変更じゃなくて、bugfixだよっていうのも驚きです。
>
> 変更のログを見た限りでは「bugfix の延長で挙動変更」だと思ってたんですが、
> 想像以上に周知無しだったみたいです。
>
> 私への返信中で Mackall 氏が:
>
> fast-forward が無いと、妥当な祖先判定がアレしてしまう可能性がある、
> と以前は思ってたけど、アルゴリズムを改良したので、無くても大丈夫っぽい
>
> と書いてありましたから、ひょっとしたら Mackall 氏は fast-forward に
> 賛同していたのかも?
>
> まぁ、修正提案(@2010/12/07)から今回の採用まで随分時間が経過しているので、
> その間にアルゴリズム改良等で事情が変化してしまったんでしょうねぇ。
>
> 個人的には:
>
> fast-forward を切り替え可能にしても、ユーザは絶対選択を間違えるに
> 決まっているから、どっちかの挙動に限定した方が良い(意訳)
>
> という思い切りの良さに惚れています(笑) > Mackall 氏
>
> # git だったら絶対オプションを増やす方向に舵を切るだろうなぁ....
>
> > どういう形に落ち着くかわかりませんが、1.8(TortoiseHg2.0)の使用はしばらく我慢します。
もうすぐ 2.0.1 が出るだろうということで、日本語まわりのバグを潰してます。
何か UnicodeなんとかError みたいなのを見かけたら、バックトレースをください。
タグの日本語コミットメッセージでコケる問題はさっき直しました。 -o-
それでは。