• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:&tag(ページ,履歴,UI,思い付き,実装);
RIGHT:[[:t/履歴]] [[:t/版]]

*目次 [#w3d34582]
#contents
----
#lsx(new=true);
改訂履歴。
最新版を含む版の集約で、順序あり。実装上はページ内部名のリスト。
スペース名・ページ名%%・見解名%%を決めると特定やアクセスができる。

*関連 [#r9df1160]
#lsx(tag=履歴,new=true,except=^ページ/履歴(/.*)?$)
[[ページ/差分]]は履歴の比較。
[[編集/取り消し]]は履歴から過去版を復帰させること。

[[検索:履歴]]
履歴はツリー。でも、自由に書き換えられるのでツリーのつながりに意味がない。ツリー上はつながっていても、内容は完全に書き換えられてしまっているかも知れない。

*履歴周辺のタグ [#jb1661cf]
#tag(0,履歴)
- いろいろなページ/履歴があり得る
- 履歴は[[投票]]候補の一部
-- 見やすい
-- [[差分]]を見るビューで使うだけ
- 間違いに対処するための履歴
-- バックアップと、事後確認のための履歴
-- 「履歴」というデータは作らない
--- 「同じページ名を持つ過去の版」を集めると履歴になる
---  過去の版があれば履歴というデータは不要
- Store系(更新系)の操作で履歴ができる
- Fetch系(参照系)の操作でできる履歴もある
-- 閲覧履歴

----

*ページ/履歴とは [#be875d28]
RIGHT:[[:t/履歴]] [[:t/バージョニング]] [[:t/バックアップ]]
#contents

版が並んだもの。前後関係あり。
*** ページ名が変わったことも履歴上で分かるようにする [#va894443]
履歴は内部名%%ページID%%つながり。%%(外部名のうち見解までが共通するページではなく)%%
ページ名が変わっても同じ履歴。
ページ名はページ内容の1行目で、履歴はページ内容を完全に保存するので、過去版のページ名は最新版と違うかも知れない。

ページIDと(そのページに関連する)見解IDを指定すれば履歴を1つに特定できる。
1ページ分の履歴に複数のページ名が含まれることになる。全ての版のページ名を列挙するか、ページ名変更があった版で前後のページ名が分かるようにしないと履歴を集められない。
*[[:t/履歴]]より [#w008ff66]

**複数履歴 [#c2aa2e08]
-全ページの最新差分
ページごとに追加・削除を表示。
-1ページ(1見解)の全履歴
履歴間の差分を更新順に表示。
-各行の登場版一覧
行ごとにそれが追加された版を表示。
削除された行は読みやすくするため除外。
あとで[[:t/履歴]]を追加。

**複数履歴を一覧したい [#se44545c]
変更履歴をページや見解ごとに表示できればいい。
時系列順に前版の差分を表示。その当時の特定版へのリンクも併記。
**下位ページの履歴は上位ページにも残る [#nee28d8e]
下位ページは上位ページの一部なので。
**タイムマシン [#q9f5664e]
TimeMachineのように、ある時点のwikiに戻れるように。
あるページのある変更が行なわれたとき、他のページはどうだったかが分かるように。
**[[ページ/履歴]] [#b43e0382]

見せ方はリスト、単位時間ごとに版ID付きページ名を並べて。
単位時間は利用者が指定。適度な間隔で自動調整できればいいが、方法が無いので。
// **断片の分類
// ***[[:i/]]

単位時間の中では1ページあたり最新?の版を表示。

選択すると、その日時付きでwikiページにアクセス、リンクをクリックしても日時指定は外れないモード。
ヘッダーに古いwikiであることを表示。
編集は…その時点の(版ID付きの)ページを元にした編集にしたい。
(通常の編集で、最初に全文を消して、過去の版を貼り付けるのと同じ)
日時の解釈はそれぞれのプラグイン次第。
**バックアップではない [#yaa8bb54]
最新版も含める。
荒らされたときのための予備ではなく、有効な記録として扱う。
計画の進捗を知る、などに。

**履歴/ [#wf7e784e]

**復帰のコスト [#p1d30d8b]
復帰のコストは荒らしのコストよりも低くなければならない。
→履歴一覧などの1件ごとに「これを最新版にする」というボタンを。
※GETクエリー
RIGHT:[[:t/手間を省く]]
#ls


**差分には検索しやすい印をつける [#f07985f9]

 追加行)

とか

 DELETED>

とか。
記号部分を除いても特徴のある文字列になるように。

RIGHT:[[:t/UI]]
**履歴を取らないとき [#b1ace8cd]
+システムによる自動更新で、履歴を取らないことが指定されている場合
(システムによる更新では履歴を作る場合のほうが多い)
+同一ユーザーによる同じページの複数回更新時
上書きする。
バックアップや履歴を取らない。無駄。
更新を1回取り消すと他のユーザーによる更新まで戻ることになる。
**履歴を消す場合 [#r52b74aa]
というか、履歴を消す場合。
誤字を直しやすくするために…
+ページ更新時
+編集者が前の版のと同じ
+前の版の作成日時から計って一定時間内(Wikiの設定)

…が全て成立するなら、前の版を消す。
「細部の編集」「ちょっとした変更」といったもの。
RIGHT:[[:t/設定]]

※「プレビューすればいい」というのは不可。他のページと影響しあう部分はプレビューできないから。


**復帰させやすくするため [#g1786196]
-バージョンを超えて検索
-履歴一覧に変更点のダイジェストを表示
少なくとも変更後のほうは表示。



**参照履歴、編集履歴 [#kd13eb0b]
-参照履歴
アクセスログ。ページごとのカウンターの情報源。参照されるたびに記録。
-編集履歴
ページ/版。編集されるたびに記録。


**定期的に巡回している人のための差分 [#l58b9596]
1回前との差分…では分かりにくい。期間じゃないと。
差分一覧(バックアップ一覧、版の一覧)に1日、1週間、1ヵ月、3ヵ月、6ヵ月、1年、2年(以降は1年ごと)の区切り線を入れる。
数ページに渡って1週間以内の差分を見たいとき、どれを選択すればいいか分かりやすい。


**差分表示は閲覧用ビューで [#xba9a148]
WikiTextのソース表示では分かりにくい。
差分も閲覧するためのビューなので、閲覧用ビューに差分情報を追加すべき。
行頭に変更マークや色をつける、編集のあった段落を枠で囲うなど。

閲覧用ビューに表れない部分が変更されていても変更マークを付けるように。
詳細は編集ビューでWikiTextを見ればいい。

編集アイコンは閲覧時と同様に使えるように。
差分を見て、すぐに章単位の編集ページへ行けるように。