Local History
ローカルヒストリーはGitのようなバージョン管理ツールとは別に、RubyMine独自でファイルの履歴を取得してくれる仕組みです。
コードの編集、テストの実行、アプリケーションのデプロイなどを行うと、自動的に記録され、RubyMine上で行われた変更とそれ以外(例えばターミナルから削除したとか)の変更のリビジョンが維持されます。
Gitではステージングしていないと基本的に履歴のリカバリが難しいため、もしGitの管理粒度よりも小さなところで履歴を参照したい場合は、Local Historyの機能を使用してみましょう。
Local Historyを確認する:Show History
Local Historyはプロジェクトツールウィンドウまたはエディタのコンテキストメニュー > Local History > Show Local History からアクセスすることができます。
エディタ上のコンテキストメニューでは「Show History」の他に、「Show History for selection」というメニューがあります。
エディタ内で任意のテキストを選択(ドラッグ)した状態で「Show History for selection」を選択することで、指定した箇所についてのLocal Historyだけを確認することができます。
Local Historyで保存されたバージョンにファイルを戻す:Revert
Local Historyで保存されたバージョンにファイルを戻すには、Show Historyを開いた上で、ファイルを右クリックして「Revert」を選択するか、エディタ上で直接編集します。
エディタ上で編集する場合は、差分箇所は以下の色で表示されています。
色 | 意味 |
---|---|
グリーン | 追加(Local Historyにはなかったもの) |
ブルー | 変更(Local Historyにあったが、現在の版で変更が加えられているもの) |
グレー | 削除(Local Historyにあったが、現在の版で削除されたもの) |
左側のエディタから右側へ伸びている「>>」をクリックすると、Local History上の履歴が現在の版に反映されます。
なおこの矢印を利用せず、現在の版を直接修正することも可能です(例えば、Local Historyの内容を全コピーして、現在の版に貼り付けるなど)
修正が完了次第、Local History画面を閉じることで、内容が反映されます。
Local Historyにラベルをつける
Local Historyはあくまでタイムスタンプでの保存となるため、特定のリビジョンを作業の起点にしたい場合、少々確認するのが面倒です。 そんな時は各バージョンにラベルをつけることができます。
「ここの履歴を残したい」と思ったタイミングで、エディタを右クリックし、コンテキストメニュー > Local History > Put Labelを選択します。
ラベル名をOKを押すことで、Local History上にラベルが表示されるようになります。