Lost & Found で失われた作品を復元する
Lost & Found は、reflog、GitTree のリカバリ参照、およびブランチがポイントしなくなったコミットの到達不能オブジェクトを検索します。それぞれが保持する内容をプレビューし、それを新しいブランチに保持します。何もチェックアウト、リセット、削除されません。
GitTree で無料で動作: すべてのローカル Git 機能。アカウントは必要ありません。
始める前に
- 作業はこのコンピュータ上で行われました。Lost & Found はこのリポジトリのローカル履歴のみを読み取り、リモートでは読み取りません。
- Git はまだそれをプルーニングしていません。到達不能なオブジェクトはガベージ コレクションによって削除され、reflog エントリはデフォルトで約 90 日後に期限切れになります。
どこで見つけられますか
- 左側のパネルの TOOLS セクション: Lost & Found。
- ツールバー、リポジトリ タブのメニュー、または Reflog ダイアログの Tools: Lost & Found、または
Alt+Shift+D。 - コマンド パレット: Lost & Found。
| アクション | macOS | WindowsとLinux |
|---|---|---|
| Lost & Found | ⌥⇧D | Alt+Shift+D |
| コマンドパレット | ⌘⇧P | Ctrl+Shift+P |
ステップ
地元の仕事を探す
Include a deeper scan for unreachable objects にチェックを入れると、ドロップされたスタッシュなど、何も指していないコミットやファイルもリストされます。大規模なリポジトリでは速度が遅くなります。 Find local workを押します。 Stop は長いスキャンを終了します。
結果を検査する
Found work には、結果とそのソース、いつ表示されたかをリストします。 Filter by commit, message or source で絞り込みます。 1 つ選択してください: Why this object appears はその証拠を示し、コミット メッセージまたはファイルの内容は以下に表示され、Files の下の各ファイルはその内容を開きます。
ブランチに置いておく
Keep this commit の下に New branch name を入力し、Create recovery branch を押します。 GitTree は Created branch …. Your checkout is unchanged. と言います
グラフで示してみる
Recovered には、作成したブランチがリストされます。 Show in graph は、Lost & Found を閉じて、グラフ内のコミットを選択します。
期待される結果
コミットは新しいローカル ブランチ上にあるため、Git はそれを保持します。現在のブランチ、チェックアウト、作業ファイルはそのままです。他のブランチと同様に、ブランチをマージ、チェリーピック、またはプッシュします。
各ソースの意味
| ソース | 保持しているもの | いつ使用するか |
|---|---|---|
| リブログ | 各ブランチと HEAD が以前に指した場所 | リセット、リベース、または修正後 |
| GitTree 回復リファレンス | 作業を失う可能性のあるアクションの前にスナップショット GitTree が取得されました | GitTree でのリセット、削除されたブランチ、または破棄の後 |
| 到達不能なオブジェクト | 何も指していないコミットとファイル | 落とした隠し場所、またはターミナルで行われた作業 |
reflog 内にのみ存在するエントリはブランチからアクセスできるため、最初は非表示になります。 Include retained reflog history もそれらを表示します。
落とした隠し場所を取り戻す
スタッシュは、複数の親を持つコミットです。ブランチ上に保持すると、その変更は保存されますが、スタッシュのインデックスや追跡されていないファイルのレイアウトは復元されません。ブランチをチェックアウトするか、ブランチを自分の作業と比較して、変更を元に戻します。
遺失物またはreflog
View Reflog… は、1 つの参照の履歴を順番に表示します (前の分岐ヒントを見つける)。 Lost & Found はすべてのソースを一度に検索し、reflog で言及されていないオブジェクトを追加します。 GitTree で実行したばかりのステップについては、Undo の方が速いです (元に戻すとやり直し)。
何か問題が発生した場合
「このオブジェクトはローカルで利用できなくなりました。削除された可能性があります。」
Git のガベージ コレクションによって削除されました。別の結果、またはコミットがまだあるクローンを試してください。
「一部の情報源は利用できなかったか、限界に達しました。これらの結果は不完全です。」
リポジトリには、1 回のスキャン読み取りよりも多くの履歴があります。フィルターを使用して必要なものを見つけるか、より詳細なスキャンを実行します。
ブランチ名は拒否されます。
Git で許可されていないスペースや文字を含まない、ブランチにまだ付けられていない名前を使用してください。
質問
Lost & Found は無料プランの一部ですか?
はい。ローカル リポジトリのみを読み取り、ホスティング アカウントは必要ありません。
遺失物保管場所を変更できますか?
ブランチを 1 つ追加することで、Create recovery branch のみが変更されます。スキャンしてプレビューしても何も変わりません。
