Closed miyukki closed 9 years ago
@demmys Line is too long. を対処するので(128文字以内だけど)それ以外のレビューお願いします
対処した
表示される時間がJSTじゃないことに気づいたけどそれはまた別のPRにしましょ
@miyukki これ毎回編集前のページを全部PageHistoryに保存してるよね。 小さくても編集のたびにデータ量が線形に増えていくのはあまり嬉しくない気がするんだけど... PageHistoryにdiffを保存して、diff表示が求められたらpatchを当ててdiffyで表示する、とかは面倒?
@demmys そう。diffを保存するのも良いかなーとも思うのだけどまぁ面倒だった、のとこれだと特定のバージョンで表示するのもやりやすいかなーと。 確かにデータはどんどん増えていっちゃう(よくないかー)
@miyukki 普通にdiffコマンドとpatchコマンド呼んじゃダメなの?
Revision A -> B -> C -> D (current)
とあったときに、
diff B A > (1)
diff C B > (2)
diff D C > (3)
とPageHistoryを保存しておけば、 AとDを比べたい時には
patch D < (3) > C'
patch C' < (2) > B'
patch B' < (1) > A'
でdiffyをA'
とD
にかければ見れる。
複数のRevisionを跨ぐ場合は実行時間は問題になるかもしれないけど、そもそも2Revision以上の間を隔ててdiffを見る機能は提供しなくてもいい感があるし...
@demmys それだと10個まえのバージョン(diffではない)を見たい場合に10個patchを当てることになるよね?(10個程度は問題じゃないけど)
@miyukki そう。それがいけてない感ある。 あと思ったのは、もしdiffyに普通のdiffをHTMLに変換する機能とかがあれば、保存するdiffは
diff A B
diff B C
diff C D
として、単に2つのRevision間のdiffを表示する場合はこのdiffをHTMLにして吐いて、実際に戻す時はpatch -R
する方法かな。
これなら単にdiffを表示するときにはpatchを使わないで済む
そうするかーDiffyだとできなさそうかな
そうかー。HTMLにするのだけ問題やなー
ISSUE
26
WHAT TO DO
/pages/:path/history
と/pages/:path/diff
の追加SCREENSHOTS