ローカルヒストリアとは?IDEのローカル履歴の使い方と復元手順
「ローカルヒストリア」で検索する人の多くが知りたいのは、IDE(統合開発環境)にある Local History(ローカル履歴) のことだとみられます。Gitに記録する前の編集内容まで、IDEが自動で残してくれる機能です。うっかり消したファイルや、コミットしていない変更を戻すときに役立ちます。
この記事で分かること:
- ローカルヒストリア(Local History)の意味と、検索結果が地域史に寄る理由
- IntelliJ系IDEとVS Codeでの開き方・復元手順
- Gitとの違い、保持期間などの注意点
ローカルヒストリアとは?結論と検索意図の整理
「ローカルヒストリア」は、IDEのローカル履歴(Local History)を指す表記ゆれと考えられます。 Local Historyは、ファイルの編集内容をGitとは別にIDEが自動で記録する機能です。コミットしていない変更や、削除したファイルを手元の履歴から戻せます。
検索する人が知りたいこと
この語で検索する人の疑問は、主に次の4つに分けられます。
- ローカルヒストリアという機能の意味
- どこから開いて、どう使うのか
- 消したファイルや未コミットの変更を戻せるのか
- Gitの履歴と何が違うのか
この記事は、この順番で答えます。
日本語で検索すると地域史が混ざる理由
「ローカルヒストリア」とそのまま検索すると、地域史(local history)の解説ページが上位に出ます。英語の local history には「地域の歴史」という学術上の意味もあるためです。IDEの話を探すなら、次の語を足すと絞り込めます。
| 探したい内容 | 検索語の例 |
|---|---|
| IntelliJ・PyCharmなどの機能 | 「IntelliJ ローカル履歴」「Local History 復元」 |
| VS Codeの機能 | 「VS Code Timeline Local History」 |
| 削除ファイルを戻したい | 「IntelliJ 削除したファイル 復元」 |
なお「ローカルヒストリア」という表記を公式に採用している製品は、確認できた範囲ではありません。以降は、一般に使われる「ローカル履歴」「Local History」で説明します。
Local Historyの仕組みとGitとの違い
Local Historyは、IDEが編集のたびに手元へ自動保存する履歴です。 Gitはコミットした時点だけを記録します。Local Historyはコミット前の細かい編集も含めて保持します。この差が、使い分けの出発点です。
IntelliJ系IDEでの記録のされ方
JetBrains公式ブログによると、IntelliJのローカル履歴は、編集・テスト実行・デプロイなどの操作をきっかけに、プロジェクトのリビジョン(版)を自動で記録します。自分で「保存しよう」と操作しなくても、履歴が積み上がります。
公式ヘルプ(英語版)によれば、既定の保持期間は5日で、変更もできます。5日を過ぎた古い履歴は残りません。長く残したい節目は、Gitのコミットに任せるのが安全です。
GitとLocal Historyの比較
| 項目 | Git | Local History |
|---|---|---|
| 記録のタイミング | コミットしたとき | 編集や実行などのたびに自動 |
| 保存場所 | リポジトリ(リモートにも共有可) | 自分のPC内のIDE管理領域 |
| 保持期間 | 原則ずっと | 既定5日(IntelliJの場合) |
| チーム共有 | できる | できない |
| 未コミットの変更 | 記録されない | 記録される |
| 削除した未コミットのファイル | 戻せない | 戻せる場合がある |
Gitの代わりにはなりません。Gitは「共有する正式な履歴」、Local Historyは「手元の保険」と考えると整理しやすくなります。
使い分けの目安
- 作業中に「5分前の状態に戻したい」:Local History
- 「先週の仕様に戻したい」:Git
- 「誰がいつ変えたか知りたい」:Git(blame・log)
- 「コミット前にファイルを消してしまった」:Local History
IntelliJ IDEAでローカル履歴を開いて復元する手順
IntelliJ系IDEでは、ファイルやフォルダを右クリックし「Local History | Show History」を選ぶと履歴を開けます。 左にリビジョンの一覧、右に現在の内容との差分が表示されます。PyCharmやWebStormなど、同じ基盤のIDEでも同様に使えます。
手順1:履歴を開く
- プロジェクトツリーかエディタ上で、対象のファイルを右クリックする
- 「Local History」にカーソルを合わせ、「Show History」を選ぶ
- 左のリビジョン一覧から、戻りたい時点を選ぶ
- 右側の差分で、現在との違いを確認する
差分は変更箇所の色分けで示されます。戻す前に、必要な変更まで消えないかを必ず見てください。
手順2:変更を元に戻す
復元には、2つの方法があります。
- リビジョンを右クリックし、「Revert Selected and Later Changes」を選ぶ
- 履歴画面の Revert アイコンを押す
この操作は、選んだリビジョン以降の変更をまとめて取り消す動きです。選んだ時点の後に書いた内容も、すべて消える点に注意してください。
手順3:一部だけ戻したいとき
「ファイル全体ではなく、数行だけ戻したい」場面もよくあります。差分画面では、ブロックごとに左の内容を右へ取り込む操作ができます。全体を戻すより安全です。迷ったら、いったん差分の中身を手でコピーして貼り付けるのも確実な手段です。
手順4:節目にラベルを付ける
大きなリファクタリング(コードの整理)の前などには、履歴に名前を付けておけます。右クリックメニューの Local History にある「Put Label」を使うと、後で目印として探しやすくなります。大きな作業の前に1回付けておくだけで、戻る位置が迷子になりません。
削除したファイルを戻したい場合
削除したファイルは、ツリーに残っていないため、直接右クリックできません。ファイルがあったフォルダを右クリックして「Local History | Show History」を開きます。フォルダ単位の履歴に削除の記録があれば、そこから戻せます。
ただし、記録は保持期間内に限られます。5日を過ぎた削除は、探しても出てきません。
VS CodeのTimelineでローカル履歴を使う方法
VS Codeにも同様の機能があり、エクスプローラーの「Timeline」ビューにLocal historyのエントリが並びます。 保存のたびにエントリが増えるため、保存した状態へ細かく戻れます。
履歴を確認して戻す手順
- エクスプローラーを開き、下部の「Timeline」を展開する
- 対象ファイルを開く(Timelineは開いているファイルの履歴を表示します)
- 一覧から時刻のエントリを選ぶと、差分が開く
- 内容を確認し、右クリックなどから復元操作を選ぶ
ファイルを閉じてしまった場合や、一覧から探したい場合は、Command Paletteで「Local History: Find Entry To Restore」を実行する方法があります。ファイル名と時刻から探して復元できます。
VS Codeならではの注意点
英語圏の解説では、次の点が指摘されています。
- 追跡されるのは、VS Code上で編集したファイルだけ。別のエディタや外部ツールで書き換えた内容は記録されない
- macOSでの保存先は
$HOME/Library/Application Support/Code/User/History
IntelliJと違い、保存を起点にエントリが増える点も覚えておくと便利です。保存せずに編集していた内容は、履歴に載りません。
履歴の件数や保持量は設定で調整できます。設定画面で「local history」と検索すると、関連項目が見つかります。具体的な項目名と初期値は、お使いのバージョンの設定画面で確認してください。
IntelliJとVS Codeの違い
| 項目 | IntelliJ系IDE | VS Code |
|---|---|---|
| 開く場所 | 右クリックの Local History | Timelineビュー |
| 記録のきっかけ | 編集・実行・デプロイなど | 保存 |
| 既定の保持 | 5日(変更可) | 設定で調整 |
| 対象 | プロジェクト全体の変更 | VS Codeで編集したファイル |
| 削除ファイルの扱い | フォルダの履歴から戻せる | Find Entry To Restore で探す |
ケース別:こんなときどうする?
状況ごとに最初の一手を決めておくと、慌てて上書きする失敗を防げます。 復元で一番多い失敗は、焦って新しい編集を重ね、戻りたい時点を見失うことです。
保存済みの変更を誤って消した
- 追加の編集をいったん止める
- 対象ファイルでLocal Historyを開く
- 消す直前のリビジョンを選び、差分で確認する
- 必要な部分だけ戻す
ファイルごと削除した(未コミット)
IntelliJなら、元のフォルダを右クリックして Show History を開きます。VS Codeなら、Command Paletteから Find Entry To Restore を試します。見つからないときは、OSのゴミ箱も確認してください。
git checkout や reset で変更が消えた
未コミットの変更を破棄するGit操作の後でも、IDEの履歴に残っていることがあります。IntelliJでは、該当ファイルの Local History を確認してください。確実に戻せるとは限りません。念のため、操作前にコミットかstashで退避する習慣をつけるのが安全です。
時間がない人向けの最短手順
- 対象ファイルを右クリックし、Local History(VS Codeは Timeline)を開く
- 消える直前の時刻のエントリを選ぶ
- 差分を見て、必要な行だけコピーする
- 現在のファイルに貼り付けて保存する
全体を戻す操作より、コピーして貼る方法のほうが、新しい編集を巻き込みません。
デメリット・向いていない用途と注意点
Local Historyは便利ですが、バックアップやバージョン管理の代わりにはなりません。 次の限界を知っておくと、過信による事故を避けられます。
限界の一覧
- 保持期間がある:IntelliJの既定は5日。1週間前の状態は戻せない
- PC内だけの記録:ディスクの故障やPCの紛失で、履歴ごと失われる
- 共有できない:チームメンバーには見えず、レビューにも使えない
- ツール依存:VS Codeは、VS Code外での編集を記録しない
- IDE外の削除は不確実:ターミナルで
rmした場合などは、記録が残らないことがある
向いていない人・場面
- 長期間の変更履歴を残したい人:Gitで小まめにコミットするほうが向いています
- 大容量のバイナリを多数扱うプロジェクト:履歴の容量が増えやすいため、設定の確認をおすすめします
- 機密ファイルを扱う場合:履歴にも内容が残る点を意識してください
失敗例と対策
| 失敗例 | 原因 | 対策 |
|---|---|---|
| 戻したら新しい編集も消えた | 「選択以降をすべて取り消す」動作を理解していなかった | 戻す前に差分を確認し、部分的に取り込む |
| 履歴が見つからない | 保持期間が過ぎた | 重要な変更はこまめにコミットする |
| 他のエディタの編集が出てこない | VS Codeは外部編集を追跡しない | 編集は同じIDEで行う |
| 戻したいリビジョンが多すぎて選べない | 目印がない | 大きな作業の前に Put Label を付ける |
事故を防ぐ運用チェックリスト
履歴機能に頼る前に、先に事故を減らす運用を決めておくと安心です。 次の項目を、作業開始時に確認してください。
- 作業の区切りでコミットしている(未コミットのまま日をまたがない)
- 大きな変更の前に Put Label か、ブランチを作った
- Gitの破棄系コマンド(reset –hard、checkout の上書き)の前に退避した
- 保持期間が自分の作業サイクルに合っている
- 重要なファイルは、IDE外のバックアップにも入っている
Gitの一時退避と併用する
未コミットの変更が不安なら、git stash で退避する方法があります。IDEの履歴とGitの退避は役割が違うため、重ねて使うと安全度が上がります。
git stash push -m "作業中の退避"
git stash list
git stash pop
破棄系の操作を実行する直前に、1回だけ退避しておく使い方が現実的です。
よくある質問
Q. 「ローカルヒストリア」という機能は実在しますか?
IDEの正式な機能名としては、Local History(ローカル履歴)が一般的です。「ローカルヒストリア」は、その表記ゆれか、検索時の言い間違いとみられます。製品によって呼び方は異なるため、各IDEのメニュー表記を確認してください。
Q. IntelliJのローカル履歴はどこから開きますか?
ファイルを右クリックし、「Local History | Show History」を選びます。左にリビジョン、右に現在との差分が表示されます。
Q. 削除したファイルは戻せますか?
保持期間内なら、戻せる場合があります。IntelliJでは、削除前にファイルがあったフォルダで Show History を開いて探します。見つからない場合は、OSのゴミ箱やバックアップを確認してください。
Q. ローカル履歴の保持期間はどれくらいですか?
IntelliJの既定は5日で、変更もできます。VS Codeでは設定で件数などを調整します。長期の保管が必要な内容は、Gitにコミットしておくのが確実です。
Q. Gitを使っていれば、Local Historyは不要ですか?
役割が違うため、併用が向いています。Gitはコミットした内容だけを残します。Local Historyは、コミット前の編集や削除も拾える点が強みです。
Q. VS Codeで他のエディタの編集内容は復元できますか?
できません。追跡されるのは、VS Code上で編集したファイルだけです。別のエディタで書き換えた内容は、Local historyに入りません。
Q. 「Revert Selected and Later Changes」を押すと何が起きますか?
選んだリビジョン以降の変更を、まとめて取り消します。選んだ時点より後に書いた内容も消えるため、押す前に差分を確認してください。一部だけ戻したい場合は、差分から必要な部分を取り込む方法が安全です。
Q. 履歴が見つからないときは、どうすればよいですか?
まず、対象のファイルかフォルダを間違えていないかを確認します。次に、保持期間を過ぎていないかを確かめます。それでも無ければ、Gitの履歴、OSのバックアップ、クラウドの版管理(利用していれば)を順に当たってください。
まとめ
今日の作業が終わったら、次の2つを試してください。
- 普段使うIDEで、適当なファイルの Local History(VS Codeは Timeline)を一度開き、場所を覚える
- 自分の作業サイクルと保持期間が合っているか、設定を見直す
残る問いは、「履歴が残る期間より前の状態を、自分は必要としていないか」です。必要なら、コミットの粒度を細かくする方向で、運用を見直してみてください。
※本記事は公開情報をもとに整理したものです
参考:
- JetBrains公式ブログ「ローカル履歴」解説(https://blog.jetbrains.com/ja/2020/03/31/2927/)
- JetBrains公式ヘルプ Local History(https://www.jetbrains.com/help/idea/local-history.html)
- JetBrains公式ヘルプ Using Local History(https://www.jetbrains.com/help/idea/using-local-history.html)
関連記事
- 地元の歴史を調べるには?ローカルヒストリアで考える地域史の入り口
- 「どうしたらできるか」と言われて現場が辞める理由とは?助けを求めた時の対処
- ドパ英単語ガチャとは?ガチャ感覚で英単語を学ぶ仕組みと選び方を整理

